我在 application.properties 中有简单的日志设置:
logging.file = logs/debug.log
logging.level.org.hibernate.SQL = DEBUG
logging.level.org.hibernate.type = TRACE
我有一个包co.myapp.notifier
。我希望这个包的所有类都记录到 logs/notifier.log
。我试过了
https://stackoverflow.com/a/9652239
和
https://stackoverflow.com/a/728351
没有运气。
在所有情况下,消息都会转到我的 debug.log
最佳答案
如果您需要这样做,您将需要自己的 logback.xml
文件。
<configuration>
<!-- Normal debug log appender -->
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<file>debug.log</file>
<encoder>
<pattern>%date %level [%thread] %logger{10} [%file:%line] %msg%n</pattern>
</encoder>
</appender>
<appender name="virtuallab" type="ch.qos.logback.core.rolling.RollingFileAppender">
<file value="Logs/virtuallab.log"/>
<appendToFile value="true"/>
<maxSizeRollBackups value="5"/>
<maximumFileSize value="5MB"/>
<rollingStyle value="Size"/>
<staticLogFileName value="true"/>
<encoder>
<pattern>%-4relative [%thread] %-5level %logger{35} - %msg%n</pattern>
</encoder>
</appender>
<!-- Setup the root category, add the appenders and set the default level -->
<root level="debug">
<appender-ref ref="FILE" />
</root>
<!-- Specify the level specific to co.myapp.notifier -->
<logger name="co.myapp.notifier">
<level value="ALL" />
<appender-ref ref="virtuallab" />
</logger>
</configuration>
关于java - 如何在 Spring Boot 中将特定类记录到另一个日志文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31941353/