相关疑难解决方法(0)

如何在logback中从Java堆栈中删除换行符?

我正在尝试从Java堆栈中删除换行符.

我遵循了logback模式 -

<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %replace(%msg){'\n', ''}%n</pattern>
Run Code Online (Sandbox Code Playgroud)

我希望它能替换消息中的换行符,但它没有这样做.我看到用新行打印出的stacktraces.

但是,如果我使用以下模式(仅用于测试目的) -

<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %replace(%msg){'.*', 'x'}%n</pattern>
Run Code Online (Sandbox Code Playgroud)

我发现消息正在被字符x替换,但堆栈跟踪仍然按原样打印.

这让我相信logback会独立地处理堆栈跟踪.我已经通过了logback文档,它说可以通过(%ex)引用stacktraes.

但是,我一次只能为一个appender激活一个模式.我如何确保我没有在stacktraces中获取换行符?

java regex logback

8
推荐指数
1
解决办法
5904
查看次数

标签 统计

java ×1

logback ×1

regex ×1