蓝鲸社区版接入zabbix磁盘告警实现日志清理的故障自愈示例

一. 整体收益

实现自动化清理应用日志,减少运维人工清理操作,在一定程度上提高了系统可用性和稳定性,同时提高运维效率和节约了运维成本。

二. 之前的故障处理模式

我们的应用服务器每天都产生很多日志,凌晨定时清理半年以前的日志,zabbix设置报警阈值20%和10%,低于阈值就需要登陆服务器,进入指定日志目录,查找最早的文件,再进行人工清理日志,花费时间至少要15分钟。

ll -ht #查找最早文件

rm -fr filename #删除指定文件

三. 使用故障自愈后的处理模式

自从使用蓝鲸故障自愈,增加zabbix告警源,收到空间不足报警,通过蓝鲸自愈就可以自动清理最后一天的日志,一会就自动清理日志,不需要手工登陆到服务器后台执行删除命令,避免了经常登陆执行删除命令误操作,很大程度上提高了运维效率,以及系统稳定性。

接下来,分享一下日志自愈的流程:

告警源启用zabbix,按照接入流程执行

新建常用作业,编写删除最早一天日志脚本,用的方法可能比较土,大家有简便的方法记得告诉我哦

#!/bin/bash

if [ “ls -A /home/logs/” != “” ];then

cd /home/logs;

oldest_date=$(stat $(ls -ltr /home/logs/ | awk ‘/^-/{print $9}’ | head -1) | grep ‘+0800’ |sed -n ‘2p’ | awk -F’[:: ]+’ '{print 2}') file_date=(date -d "$oldest_date 1 days " “+%Y%m%d”)

find /home/logs/ ! -newermt $file_date -exec rm -fr {} ;

else

echo “文件夹为空或不存在”

fi

创建自愈套餐,选择套餐类型为作业平台

接入自愈,因为采用zabbix告警源,告警类型选择zabbix监控下的磁盘容量(vfs.fs.*)

测试,zabbix触发告警,成功删除最后一天日志,微信接收到自愈通知

2018.12.28的日志已自动删除!自愈成功~

你可能感兴趣的:(蓝鲸社区版接入zabbix磁盘告警实现日志清理的故障自愈示例)