自定义Log4j以过滤PatternLayout

时间:2010-03-05 03:37:38

标签: log4j customization pattern-layout

我刚刚开始迁移到WLS 10.x并注意到WL的线程名[%t]非常详细,而且比我的部署需求更具信息性。

最终,我只关心线程ID,但WL给了我这个:<

[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'
~

有没有人知道log4j中是否有办法编写一个自定义过滤器,允许我覆盖PatternLayout所以我可以解析WLS线程名称只输出线程ID,在这种情况下上面是0 ?我宁愿扩展然后自定义,因为它使升级库变得更加容易。

1 个答案:

答案 0 :(得分:0)

您想要编写自己的转换字。在logback中,您可以在几分钟内完成。请参阅custom conversion specifiers部分。

如果你真的很懒,并且无法编写自定义转换字,只需告诉现有的throwable将线程名称修剪为26个字符。模式将是“%.- 26thread”。我选择了26,因为这是“[ACTIVE] ExecuteThread:'0'”的长度。