Log4j疯狂写日志问题排查 | 京东云技术团队

💡 原文中文,约800字,阅读约需2分钟。
📝

内容提要

最近一个Java系统上线后不久就收到了磁盘使用率告警,磁盘使用率超过了90%以上,并且还在不停增长。服务器磁盘被打满,导致系统的业务日志无法继续打印,严重影响系统的可靠性。最终发现是一个第三方jar包内的log4j配置文件导致的问题,通过排除该jar包解决了问题。提醒以后引入第三方jar包时要检查依赖范围,避免冲突和其他影响。对外提供第三方jar包时不要包含调试代码和日志配置测试文件。

🎯

关键要点

  • Java系统上线后收到磁盘使用率告警,超过90%,且持续增长。
  • 服务器磁盘满导致业务日志无法打印,影响系统可靠性。
  • 初步怀疑是日志级别问题,但业务日志文件内容不大。
  • 通过堡垒机查看高磁盘使用率目录,发现log4j.log大文件。
  • 应用日志配置未使用log4j,怀疑jar包内有log4j配置文件。
  • 找到第三方jar包内的log4j.xml,root日志级别为debug,输出目录为系统根目录。
  • 该jar包是其他jar包的传递依赖,通过maven排除该jar包解决问题。
  • 引入第三方jar包时需检查依赖范围,避免冲突和影响。
  • 对外提供jar包时,不应包含调试代码和日志配置测试文件。
➡️

继续阅读