0%

Jenkins日志输出异常,导致占满磁盘的问题处理

在之前做了Jenkins + Git + Maven的持续集成解决方案,今天访问Jenkins,异常缓慢,进控制台监控,发现磁盘不知道由于什么原因,竟然被塞满了.连基本的Tab键都不起作用了…这叫一个莫名其妙.于是赶紧找占满磁盘的文件到底是何方神圣.

du -ah --max-depth=1

通过一层一层查找,最终定位到Tomcat的日志文件,足足有8个G(我服务器也就20G,还包含系统).打开一看,都是这种

question: [DNSQuestion@1446063419 type: TYPE_IGNORE index 0, class: CLASS_UNKNOWN index 0, name: ]
question: [DNSQuestion@1395874330 type: TYPE_IGNORE index 0, class: CLASS_UNKNOWN index 0, name: ]
question: [DNSQuestion@1348504482 type: TYPE_IGNORE index 0, class: CLASS_UNKNOWN index 0, name: ]
question: [DNSQuestion@1919902183 type: TYPE_IGNORE index 0, class: CLASS_UNKNOWN index 0, name: ]
question: [DNSQuestion@1295053725 type: TYPE_IGNORE index 0, class: CLASS_UNKNOWN index 0, name: ]
question: [DNSQuestion@1221193730 type: TYPE_IGNORE index 0, class: CLASS_UNKNOWN index 0, name: ]

那么首先先恢复服务器吧,清空日志文件.这里要注意一点,

/usr/local/apache-tomcat-8.5.11/logs/catalina.out

这个文件是Tomcat的日志文件,被Tomcat占用,当Tomcat运行中虽然我们可以调用

rm -rf /usr/local/apache-tomcat-8.5.11/logs/catalina.out

删掉他,但实际上还是被进程锁定的,不会释放空间.那么只能先停止锁定它的进程Tomcat,再删除它.

不过,我们还有另一种办法,

echo > /usr/local/apache-tomcat-8.5.11/logs/catalina.out

我们不删除它,而是重写它,这样就可以在Tomcat不重启的情况下清空日志了.

OK,服务恢复了,但是这只解决了问题,没有找到原因,经过一番摸索找到了下面一片文章 http://stackoverflow.com/questions/31719756/how-to-stop-jenkins-log-from-becoming-huge

解决方法:在 Jenkins => 系统管理 => System Log => 日志级别 中添加

名称:javax.jmdns
级别:off

经过测试,通过以上方法确实解决了问题.感谢!

  • 本文作者: 6x
  • 本文链接: https://6xyun.cn/article/17
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-ND 许可协议。转载请注明出处!