这篇博文和这篇中 介绍了 三种检查系统负载的方法, 还有这篇文章我们知道在系统重启的时候自动发一邮件, 类似的 我们可以在系统负载比较高的时候发邮件作为提醒.
*/2 * * * * /var/www/checkload.sh > /dev/null 2>&1
上面 通过 CRONTAB 指定了每两分钟通过 脚本 checkload.sh 来检查系统负载 下面是这个脚本的内容.
#!/bin/bash
load=`echo $(cat /proc/loadavg | awk '{print $1}') \> 3 | bc -l`
if [ "$load" -ne 0 ]; then
echo "你的系统负载较高 " | mail -s "系统负载警告 = $load" [email protected]
echo "警告邮件发送到 [email protected]"
fi
echo "当前系统负载为 $(cat /proc/loadavg)"
我们使用 awk 命令来获取 第一个数字 (类似 split 函数). 然后通过 管道 和 bc 计算机来判断是否负载超过 3 如果 是就发邮件.
我现在 QUICKHOSTUK 的服务器 为4核 所以负载超过3发邮件是比较适合的.
我们还可以结合这个脚本来获得最后几个请求,这样就可以大概定位到是什么问题: 获得最新Apache服务器访问记录的脚本
英文: How to Get a Email when System Load Average is High ? (Crontab)
本文一共 297 个汉字, 你数一下对不对.上一篇: 检查 LINUX 系统负载的三个方法
下一篇: 通过 .htaccess 设置静态资源缓存 来加速网站
扫描二维码,分享本文到微信朋友圈
博主发邮件使用sendmail还是代发? 不太清楚哪些服务会在邮件头附带ip地址, smtp应该不能用.
我记得是最简单的 sendmail 不过时常进垃圾邮件箱