如何使用特殊字符在 log4j2 中格式化堆栈跟踪?

How to format stacktrace in log4j2 using special characters?

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

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

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

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

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

假设您使用xml进行配置,

参考Represent space and tab in XML tag

使用 	 作为制表符。

%xwEx{separator(	)}