logback - 通过 XML 配置文件基于 MDC 设置日志文件名

标签 logback

我真正需要做的是拥有 不同用户的不同日志文件 .
我知道如何直接在 Java 中做到这一点。

我希望有机会通过 logback.xml 进行设置配置文件。
像这样:

 <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
        <fileNamePattern>logFile.%X{USER}.%d{yyyy-MM-dd}.log</fileNamePattern>
    </rollingPolicy>
    <encoder>
        <pattern>%d{HH:mm:ss.SSS} [%thread] %logger - %msg%n</pattern>
    </encoder>
</appender>

注意写 %X{用户} 不正确,这只是我想做的一个例子。

所以 :是否可以在 logback.xml 中设置日志文件名配置文件?

我正在使用 Logback 1.0.7

最佳答案

你可以使用SiftingAppender,请引用:http://logback.qos.ch/manual/appenders.html#SiftingAppender

关于logback - 通过 XML 配置文件基于 MDC 设置日志文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14018989/

相关文章:

java - 如何在 logback.groovy 配置中引用 ${catalina.base}?

java - Logback RollingFileAppender 无法同时写入同一日志?

java - logback-spring.xml 不会附加文件名

Logback:仅在登录到真实终端时使用彩色输出

java - 如何在 OSGI 中包含 slf4j-api、logback 和 slf4j.impl 的自定义实现?

spring-boot - Spring Boot 登录配置

java - LOGBACK:将日志写入类路径中的文件

java - if condition in logback - 在两个不同的文件夹中打印日志消息

tomcat - 打包应用程序中的 Spring Boot、Tomcat 访问日志和 Logback 配置文件

java - Jetty 访问日志写入 .tmp 文件