在log4j中使用MDC动态命名日志文件

是否有可能在运行时使用MDC命名日志文件。

我有一个单独的Web应用程序,该应用程序同时使用tomcat docbase被不同的名称调用。因此,我需要为每个文件设置单独的日志文件。

回答:

这可以在Logback(Log4J的后继者)中完成。

Logback旨在作为流行的log4j项目的后继者,从log4j离开的地方接手。

请参阅文档筛选器

SiftingAppender在引用和配置嵌套追加程序方面具有独特的功能。在上面的示例中,在SiftingAppender中将存在嵌套的FileAppender实例,每个实例均由与“

userid” MDC密钥关联的值标识。只要为“ userid”

MDC密钥分配了新值,就会从头开始构建新的FileAppender实例。SiftingAppender跟踪其创建的附加程序。未使用30分钟的Appender将自动关闭并丢弃。

在该示例中,它们基于MDC值为每个用户生成一个单独的日志文件。根据您的需要,可以使用其他MDC值。

以上是 在log4j中使用MDC动态命名日志文件 的全部内容, 来源链接: utcz.com/qa/407909.html

回到顶部