在之前做了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
经过测试,通过以上方法确实解决了问题.感谢!