我正在尝试迁移到log4j2。在RollingFile附加器中,我添加如下:
<PatternLayout>
<pattern>[%d{MM/dd/yy HH:mm:ss:SSS z}] %-18.18t %-35.35c{1} %-5p (%F:%L) %m \t %x %n</pattern>
</PatternLayout>我们知道%x用于将堆栈元素打印到每个记录器语句的末尾。
现在,如果我的栈一开始是空的,它会给我一个空的大括号,如下所示。
[01/10/17 12:17:37:116 IST] main Example2 WARN (Example2.java:52) 10 is the number [] 01/ 10 /17 12:17:37:116 IST main Example2 WARN (Example2.java:52) 10是数字[]
那么我该如何处理这种空栈的情况呢?
发布于 2017-01-11 00:39:54
你可以使用PatternLayout的notEmpty{pattern}模式转换器:
当且仅当模式中的所有变量都不为空时,此函数才会输出计算模式的结果。
例如:
%notEmpty{[%x]}别名: variablesNotEmpty{pattern},varsNotEmpty{pattern},notEmpty{pattern}
https://stackoverflow.com/questions/41568900
复制相似问题