首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CPU监控脚本未正确触发

CPU监控脚本未正确触发
EN

Stack Overflow用户
提问于 2017-05-09 22:35:26
回答 3查看 72关注 0票数 2

我想知道有没有人能帮我解释一下这不能正常触发的原因

代码语言:javascript
复制
HOSTNAME=`hostname -s`
LOAD=25.00
CAT=/bin/cat
MAILFILE=/home/jboss/monitor.mail
MAILER=/bin/mail
mailto="bob@bob.bob"
CPU_LOAD=`sar -P ALL 1 10 |grep 'Average.*all' |awk -F" " '{print 100.0 -$NF}'`
if [[ $CPU_LOAD > $LOAD ]];
then
PROC=`ps -eo pcpu,pid -o comm= | sort -k1 -n -r | head -1`
echo -e "Please check processes on ${HOSTNAME} the value of cpu load is $CPU_LOAD%.
Highest process is: $PROC" > $MAILFILE
$CAT $MAILFILE | $MAILER -s "CPU Load is on ${HOSTNAME} is $CPU_LOAD %" $mailto
fi

这似乎是工作正常的sar和ps,但我仍然收到电子邮件的警报,如CPU负载是3.18%。除非我错过了一些它不应该触发的东西,除非负载大于25%。

但是,如果负载大于2.5%,似乎会做更多的事情,有什么建议吗?

谢谢

EN

回答 3

Stack Overflow用户

发布于 2018-08-23 19:17:14

而不是使用:

代码语言:javascript
复制
if [[ $CPU_LOAD > $LOAD ]];then

您必须使用

代码语言:javascript
复制
if [[ $CPU_LOAD -gt $LOAD ]]; then
票数 1
EN

Stack Overflow用户

发布于 2017-05-09 23:10:28

Bash只处理整数,所以要使用更高的精度,可以这样做:

代码语言:javascript
复制
cpu_limit=25
# read the 5min load-average straight from the special file on /proc
read -r _ load_avg _ </proc/loadavg
# multiply by 100 for precision
load_avg=$(bc <<<"scale=0; $load_avg * 100 / 1")
# compare numbers with (( )) instead
if (( load_avg > cpu_limit )); then
   ...
fi
票数 0
EN

Stack Overflow用户

发布于 2017-05-09 23:17:40

试试这段代码--(测试过了--工作正常)

代码语言:javascript
复制
$ cat f.sh
HOSTNAME=$(hostname -s)
LOAD=25.00
MAILFILE=$HOME/a.txt
MAILER=/bin/mailx
mailto="vipinkumarr89@gmail.com"
CPU_LOAD=$(sar -P ALL 1 10 |grep 'Average.*all' |awk -F" " '{print 100.0 -$NF}')
if [[ $CPU_LOAD > $LOAD ]];then
{
PROC=$(ps -eo pcpu,pid -o comm= | sort -k1 -n -r | head -1)
echo -e "Please check processes on ${HOSTNAME} the value of cpu load is $CPU_LOAD%.
Highest process is: $PROC" > $MAILFILE
cat $MAILFILE | $MAILER -s "CPU Load is on ${HOSTNAME} is $CPU_LOAD %" $mailto
}
fi
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43872719

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档