java - 如何为单个 Spring Boot 应用程序创建两个日志文件

标签 java spring spring-boot

我想创建两个记录器文件 1.对于主日志文件 3.对于调度程序(因为每5秒它会打印一个日志文件)

    private static final Logger LOGGER = Logger.getLogger(DomainHealthChecker.class); 

对于第二个记录器如何启动?

最佳答案

创建/配置 logback-spring.xml 文件以按包输出到多个文件。请参阅https://docs.spring.io/spring-boot/docs/current/reference/html/howto.html#howto-configure-logback-for-logging-fileonly

示例(来源 - Spring boot logging into multiple files ):

  <appender name="FILE1" class="ch.qos.logback.core.FileAppender">
    <file>myApp1.log</file>
    <encoder>
      <pattern>%date %level [%thread] %logger{10} [%file:%line] %msg%n</pattern>
    </encoder>
  </appender>

  <appender name="FILE2" class="ch.qos.logback.core.FileAppender">
    <file>myApp1.log</file>
    <encoder>
      <pattern>%date %level [%thread] %logger{10} [%file:%line] %msg%n</pattern>
    </encoder>
  </appender>

  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <encoder>
      <pattern>%msg%n</pattern>
    </encoder>
  </appender>

  <logger name="com.package1.foo" level="DEBUG">
    <appender-ref ref="FILE1" />
  </logger>

  <logger name="com.package2.bar" level="DEBUG">
    <appender-ref ref="FILE2" />
  </logger>

  <root level="debug">
    <appender-ref ref="STDOUT" />
  </root>
</configuration>

关于java - 如何为单个 Spring Boot 应用程序创建两个日志文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59283795/

相关文章:

Spring MVC Spring 安全性和错误处理

java - 空指针异常 : null when trying to use jdbcTemplete

java - 在 Java 中使用继承或接口(interface)的案例?

java - 如何交换数组中的两个整数,其中我的方法从 main 中接收两个整数和一个数组?

java - 如何获取 JDK 8 的二进制构建和源代码 tarball?

java - 构建 spring boot 项目而不实例化 mongo

java - Jmeter无法正确发送http请求

java - 当独立程序想要退出时,@Scheduled Tasks 使 JVM 保持挂起状态,需要杀死 JVM

java - 访问用户上的 LAZY 集合时出现 LazyInitializationException

java - 使用 Spring 的 HandlerInterceptor 发送错误会导致 406( Not Acceptable )响应