每个级别定义1个回溯文件

我想定义一个能够执行以下操作的logback配置文件:

  • 在debug.log中记录DEBUG(和更高版本)的东西
  • 在info.log中记录INFO(和更高版本)的东西

也就是说,当我打电话时:

logger.warn("blah"); // Logs to both info.log and debug.log logger.debug("bleh"); // Logs to debug.log only 

可能吗 ?

我试过这样的东西,但似乎当logback遇到多个标签时,它只需要最后一个:

  ${LOGS_FOLDER}/info.log  %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n    ${LOGS_FOLDER}/debug.log  %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n         

这里,info.log包含调试级日志:(

请注意,我想在每个包上应用此行为。

使用levelFilter解决了这个问题

示例:

  ${LOGS_FOLDER}/info.log  INFO ACCEPT DENY   %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n    ${LOGS_FOLDER}/debug.log  %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n