首页 > 解决方案 > 如何使用特殊字符在 log4j2 中格式化堆栈跟踪?

问题描述

我正在尝试格式化 Log4j2 打印的堆栈跟踪,以便分隔符不是默认的换行符,而是一个制表符 (\t)。我基本上做了这里的建议:如何在 log4j2 中格式化堆栈跟踪?

在该模式中,我可以使用非特殊字符,例如:%xwEx{separator(|)}将导致堆栈跟踪行被管道字符分隔。

但是,如果我尝试这样做:%xwEx{separator(\t)}stacktrace 行不是由制表符分隔,而是像这样的“\t”字符串:

java.lang.NullPointerException:错误发生在 ... \t at ... \t at ...

我尝试使用双反斜杠\\t,但它并没有解决我的问题。有没有办法传递特殊字符,\t如分隔符参数?

标签: javaspring-bootlog4j2

解决方案


假设您使用 xml 进行配置,

参考在 XML 标记中表示空格和制表符

用于	制表符。

%xwEx{separator(	)}

推荐阅读