在Log4j的日志条目中包含日志文件名

时间:2014-09-23 11:20:48

标签: java logging log4j logback

我需要在日志条目中包含日志文件的名称。

例如,说日志文件的最终名称类似于trx_log.2014-09-22-12-42,我打印的日志条目应该具有相同的名称。以下是一个示例日志条目。

123456|test value|xyz|trx_log.2014-09-22-12-42

我正在使用Log4j DailyRollingFileAppender来打印日志。有没有办法可以使用一些log4j / logback配置实现此要求。

2 个答案:

答案 0 :(得分:0)

不是我知道的。

但是仍然存在一种解决方案:编写DailyRollingFileAppender的自定义扩展名。

请注意,虽然文件名只能用于您的自定义appender:如果您想在另一个appender中使用此类信息(唯一的用例,我可以想到这可能有用),那么您需要更复杂的使用共享数据存储(共享内存,文件系统,数据库等)的解决方案,最简单的解决方案是刚刚建立的appender的静态成员。在这种情况下,另一个appender(lat表示Console)也需要扩展,以便将新信息附加到日志语句中。

答案 1 :(得分:-1)

使用此方法logger.getName()

logger.log(Level.SEVERE,“Exception in”+ e.getMessage()+ logger.getName());