写日志也会引发故障

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/michael51/article/details/88660146

故障现象

某应用服务器集群发布后不久就出现多台服务器相继报警,硬盘可用空间低于警戒值,并且很快有服务器宕机。登录到线上服务器,发现log文件夹里的文件迅速增加,不断消耗磁盘空间。

原因分析

这是一个普通的应用服务器集群,不需要存储数据,因此服务器里配置的是一块100GB的小硬盘,安装完操作系统、Web服务器、Java虚拟机、应用程序后,空闲空间只有几十GB了,正常情况下这些磁盘空间足够了,但是该应用的开发人员将log输出的level全局配置为Debug。这样一次简单的Web请求就会产生大量的log文件输出在高并发的用户请求下,很快就消耗完不多的磁盘空间。

经验教训

  • 应用程序自己的日志输出配置和第三方组件日志输出要分别配置。

  • 检査log配置文件,日志输出级别至少为Warn,并且检査log输出代码调用,调用级别要符合其真实日志级别。

  • 有些开源的第三方组件也会不恰当地输出太多的Eror日志,需要关闭这些第三方库的日志输出,至于哪些第三方库有问题,只有在遇到问题时才知道。

猜你喜欢

转载自blog.csdn.net/michael51/article/details/88660146
今日推荐