我正在尝试将应用程序“版本”号添加到每个日志行的开头。在我的阅读中,我注意到“标记”正是我所需要的。
在代码中,我使用
@Slf4j
,它返回 ch.qos.logback.classic.Logger
,并且在整个代码中,它被简单地用作 log.info("Hey Bob")
。我如何在不影响现有代码的情况下将标记 (log.info(VERSION_MARKER, "Hey Bob")
) 预先添加到每个日志语句中?
我不会/不能浏览数千行代码并进行更改。
或者,有更好的方法吗?
<appender name="LOGSTASH" class="ch.qos.logback.core.rolling.RollingFileAppender">
<append>true</append>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %m%n%wEx</Pattern>
</encoder>
</appender>
所以我的假设是修改上面的模式。
您可以在模式中使用系统属性,例如
%property{app_version}
<Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %property{app_version} %m%n%wEx</Pattern>
运行应用程序时,将
-Dapp_version=1.2.3
添加到命令行。