您的位置:首页 > 移动开发 > IOS开发

nagios监控脚本编写

2015-08-28 14:25 309 查看
公司开发的app,有发送短信功能。
有时候发现短信有几分钟延迟,发现短信队列,达到了1万。
需要紧急处理。
每次都是用户反馈,这个不太好。

所以写了一个shell脚本,监控短信队列条数。
公司开发了一个接口,可以直接看到短信队列条数的条数。
访问接口,命令如下
curl http://xx.xxx.com/inform/waitSendInformCount 返回值如下,最后的0表示短信队列条数
{"code":0,"msg":"成功","data":0}
所以直接提取最后一个数字就可以了
命令如下:
curl http://xx.xxx.com/inform/waitSendInformCount | cut -d ":" -f 4 | cut -d "}" -f 1

编辑脚本
check_sms_queue.sh
内容如下:

#!/bin/bash
#
if [ "$1" = "-w" ] && [ "$2" -gt "0" ] && [ "$3" = "-c" ] && [ "$4" -gt "0" ]; then
a=`curl http://xx.xxx.com/inform/waitSendInformCount | cut -d ":" -f 4 | cut -d "}" -f 1`
if [ "$a" -ge "$4" ]; then
echo "sms_queue: CRITICAL Total: $a - concurrent_count |USED=$a;200;500;;"
$(exit 2)
elif [ "$a" -ge "$2" ]; then
echo "sms_queue: WARNING Total: $a - concurrent_count|USED=$a;200;500;;"
$(exit 1)
else
echo "sms_queue: OK Total: $a - concurrent_count|USED=$a;200;500;;"
$(exit 0)
fi
else
echo "check_sms_queue"
echo ""
echo "Usage:"
echo "check_sms_queue -w <warn count> -c <crit count>"
echo ""
echo "Copyright (C) 2014 http://www.xx.com/" exit
fi

效果如下:





本来以为不会有图形显示的,点击之后,居然有。
因为参考链接,有一段话提到
nagios会将"|"之后的内容作为性能数据输出 。如可输出给pnp4nagios




所以说,这段脚本,可以作为模板,编写其他的应用监控。
红色加粗部分,是我修改的地方,这样改动起来比较方便,一键替换就好了。
以前看的那些文章写的,太复杂了。总感觉写一个自定义监控脚本,比登天还难。
后来看到一些简单的,写了一个。发现没有图形画,蛋疼。
怎么就没有,又简单,又有图形画的呢?今天,终于被发现了。
有一种 断剑重铸之日 其势归来之时 的感觉。

本文参考http://www.ahlinux.com/shell/23218.html
本文出自 “陨落星空” 博客,请务必保留此出处http://xiao987334176.blog.51cto.com/2202382/1689271
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: