我想打印记录器以及上下文根。
例如我的记录器在控制台中打印如下。
INFO [MandatoryAdapter] Ends - validateData
现在我想要如下。
INFO [APPLICATION_NAME] [MandatoryAdapter] Ends - validateData
任何人都可以帮助我。
谢谢,
纳伦德拉
答案 0 :(得分:2)
假设您有多个应用,并且每个应用都拥有自己的log4j.properties文件
我们做了类似的事情,即硬编码 ConversionPattern中的网络应用程序名称
log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout
log4j.appender.LOGFILE.layout.ConversionPattern=%d{yyyy-MM-dd HH\:mm\:ss.SSS} <business> [-] %-5p %m \: %c-(%L) %n
此处<business>
是应用名称
进一步阅读
答案 1 :(得分:2)
我建议使用Log4j的MDC(映射诊断上下文,请参阅docs)。
基本上,您的应用程序将MDC线程局部变量设置为您的应用程序名称,然后log4j记录器会将每个消息打印出来。
如果这是针对webapp的,那么您可以在请求开始时设置MDC,并在完成时取消设置。