繁体   English   中英

初学者的log4J问题

[英]A beginner's log4J question

我在转换模式中为基本目的配置了log4j:-

log4j.appender.rollingFile.layout.ConversionPattern=%p %t %c - %m%n

但是现在我想记录错误发生的类名以及用户名(在会话对象中可用)以及该事件发生的日期和时间。 我该怎么做呢? 我需要对格式字符串进行哪些更改?

提前致谢 :)

看一下PatternLayout文档,了解您想要的大部分内容。

您遇到的麻烦是从会话中获取用户名(Log4j无法自动执行此操作)。 我也许会调查NDCMDC ,然后从会话中填充它们(也许在servlet过滤器中?)。 它们是每个线程的 ,因此假设您的用户具有相同的作用域,则可能会有所帮助。

要获取类名,可以使用%l,但是会降低性能。 要获取用户名,您需要使用映射或嵌套的诊断上下文 ,然后分别在模式字符串中使用%X或%x。

检查PatternLayout javdocs。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM