此脚本用户简单的系统性能报警.具体变量定义可以视情况自行调整。
测试环境信息
操作系统版本:CentOS release 6.7 (Final)
内核版本:Linux ZQWY-COMMON-239 2.6.32-573.el6.x86_64 #1 SMP Thu Jul 23 15:44:03 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
脚本内容
#!/bin/bash
source /etc/profile
diskused=`df -h | awk '{print $4}' | head -n 3 | grep '%' | awk -F'%' '{print $1}'`
IP=`ip a | grep inet | egrep -v 127.0.0.1 | egrep -v inet6 | awk -F' ' '{print $2}' | awk -F'/' '{print $1}'`
report=80
if [ $diskused -ge $report ]
then
echo " $IP disk used more than 90% " | mail -s 'diskreport' wuxp@imsa.org.cn
echo " $IP disk used more than 90% " | mail -s 'diskreport' lxx@ixxxx.org.cn
fi
测试脚本时遇到手动执行正常,但是定时任务无法执行.
此时可以查看日志 tail -f /var/log/cron
另有手动执行可以获取变量,定时任务无法获取变量值.
在脚本中添加环境变量即可,例如:source /etc/profile
此脚本用户了内网测试机器报警,非生产,测试环境仅邮件报警,未添加zabbix/短信。
定时任务内容
[root@ZQWY-COMMON-239 scripts]# crontab -l
8 14 * * * sh /root/scripts/diskreport.sh