Spring Boot Logback 配置指定目录代码日志单独记录
要实现 Spring Boot 自带的 Logback 配置指定目录下的代码中的 log 单独记录,可以按照以下步骤进行:
-
在
src/main/resources目录下创建logback-spring.xml文件,该文件为 Logback 的配置文件。可以参考 Logback 的官方文档进行配置。 -
在
logback-spring.xml文件中,定义一个新的 Appender,用于记录指定目录下的日志。可以使用RollingFileAppender来实现日志的滚动记录。
<appender name="customAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>/path/to/logfile.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<fileNamePattern>/path/to/logfile-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
<maxFileSize>10MB</maxFileSize>
<maxHistory>7</maxHistory>
</rollingPolicy>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
替换 /path/to/logfile.log 为指定目录下的日志文件路径,替换 /path/to/logfile-%d{yyyy-MM-dd}.%i.log 为日志文件的滚动命名模式。
- 在
logback-spring.xml文件中,为指定的代码包或类配置日志记录器,并将其关联到新定义的 Appender。
<logger name="com.example.package" level="DEBUG" additivity="false">
<appender-ref ref="customAppender" />
</logger>
替换 com.example.package 为指定的代码包或类路径。
- 在
logback-spring.xml文件中,为其他代码包或类配置默认的日志记录器。
<root level="INFO">
<appender-ref ref="CONSOLE" />
<appender-ref ref="FILE" />
</root>
这将保持其他代码包或类的默认日志记录器不受影响。
- 在 Spring Boot 的配置文件(例如
application.properties或application.yml)中,将日志的配置文件设置为logback-spring.xml。
logging.config=classpath:logback-spring.xml
或者
logging:
config: classpath:logback-spring.xml
- 重新启动应用程序,日志将根据配置文件中的设置进行记录。指定目录下的代码中的日志将被单独记录到指定的日志文件中。
原文地址: https://www.cveoy.top/t/topic/o5wm 著作权归作者所有。请勿转载和采集!