背景:项目日志输出太多了,但是有些日志在测试服务中的确可能需要,而在生产环境中我只需要WARN或ERROR级别的日志,否则一有问题很难找日志,因此设置日志级别,但发现设置了无效,到此记录以下
1. 首先我的日志级别是在loback-spring.xml中配置的,因此要修改某些日志级别,参考如下:
2023-12-07 14:49:09.257 [main] WARN [o.springframework.boot.actuate.endpoint.EndpointId] - Endpoint ID 'service-registry' contains invalid characters, please migrate to a valid format.
例如上面这句日志,因为是WARN级别一般警告信息我们都需要关注的,就不管,如果是DEBUG级别,而且确定对自己没用的不需要关注的,那么就在logback-spring.xml文件中配置如下:
<logger name="o.springframework.boot.actuate.endpoint" level="WARN">
<appender-ref ref="PERFORMANCE" />
</logger>
这样就不会再打印o.springframework.boot.actuate.endpoint路径下的WARN以下级别的日志,也就是DEBUG与INFO的日志就不会出现了,
2. 以下是一些我不需要的日志配置案例:
<logger name="com.epson.esl.leaderdesktop.Aspect.OperationLogAspect" level="WARN" additivity="false">
<appender-ref ref="OPERATIONLOG" />
</logger>
<logger name="com.epson.esl.leaderdesktop.Aspect.PerformanceAspect" level="WARN" additivity="false">
<appender-ref ref="PERFORMANCE"/>
</logger>
<logger name="io.lettuce.core.protocol" level="WARN">
<appender-ref ref="PERFORMANCE" />
</logger>
<logger name="org.apache" level="WARN">
<appender-ref ref="PERFORMANCE" />
</logger>
<logger name="com.netflix" level="WARN">
<appender-ref ref="PERFORMANCE" />
</logger>
<logger name="c.n.loadbalancer" level="WARN">
<appender-ref ref="PERFORMANCE" />
</logger>
<logger name="o.s.c.config" level="WARN">
<appender-ref ref="PERFORMANCE" />
</logger>
<logger name="o.s.data.redis" level="WARN">
<appender-ref ref="PERFORMANCE" />
</logger>
<logger name="i.l.c.RedisChannelHandler" level="WARN">
<appender-ref ref="PERFORMANCE" />
</logger>
<logger name="druid.sql.Connection" level="WARN">
<appender-ref ref="PERFORMANCE" />
</logger>
<logger name="o.springframework.jdbc.datasource.DataSourceUtils" level="WARN">
<appender-ref ref="PERFORMANCE" />
</logger>
<logger name="o.s.jdbc.datasource.DataSourceTransactionManager" level="WARN">
<appender-ref ref="PERFORMANCE" />
</logger>
<logger name="druid.sql.ResultSet" level="WARN">
<appender-ref ref="PERFORMANCE" />
</logger>
3. 如果配置了都无效 ---以下是解决办法:
那就该检查以下.properties文件中有没有例如:logging.level.root=DEBUG 等等相关的配置,如果有那么这个配置优先,也就是xml中的配置就会无效了
logging.level.root=DEBUG 是设置的总的日志级别为 DEBUG