首页 > 代码库 > Ubuntu监控load脚本

Ubuntu监控load脚本



Ubuntu监控load脚本:

# vi load.sh

按a或i进入编辑模式

#!/bin/bash

Name=`hostname`

IP=`/sbin/ifconfig eth0 | grep "inet addr" | awk -F[:" "]+ ‘{print $4}‘`

Date=`date +%m%d%y`


Load=`/usr/bin/uptime | grep load | awk -F[:" "]+ ‘{print $14}‘ | tr -d ","`

Load2=150

if [ $(echo "$Load > $Load2" | bc) -eq 1 ]

then

touch /log/Load/$Date.log
/usr/bin/top | head -15 | tr -d ‘[m‘ > /log/Load/$Date.log

/usr/bin/mail -s "$Name($IP) Load is $Load" zhiming.yang@spreadtrum.com < /log/Load/$Date.log
fi

按Esc键退出编辑模式

:wq  (保存并退出)

难点说明:

1、浮点数比较大小方法:$(echo "$Load > $Load2" | bc) -eq 1  ,1代表真(即大于),0代表假(即不大于)

2、当Load值(取的第1个值,后2个表示5分钟和10分钟内的load)大于150时发邮件通知并截取top的前15行

3、top前15行到文档中会有些干扰符号,排除了“[m”,还有部分无法排除,主要和信息排版有关



本文出自 “linux” 博客,谢绝转载!

Ubuntu监控load脚本