×

微信扫一扫,快捷登录!

nagios如何监控进程运行的时间

标签: 监控
本帖最后由 monicazhang 于 2016-1-11 17:53 编辑

来自:网络
1: 监控进程运行时间的脚本如下:                    
nagios培训

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#!/bin/sh
STATE_OK=0
STATE_CRITICAL=2
STATE_UNKNOWN=3
if [ $# -eq 1 ];then
        myprocss=$1
        starttime=`ps -eo lstart,cmd |grep "${myprocss}"|grep -v grep|grep -v check_process_starttime|grep -v bash|head -

1|cut -b 1-24`
        if [[ -n ${starttime} ]];then
                starttimeseconds=`date +%s -d "${starttime}"`                  
nagios实施

                curenttimeseconds=`date +%s`
                let difftimeseconds=curenttimeseconds-starttimeseconds
                if [ $difftimeseconds -gt 300 ];then
                        echo "CRITICAL,starttime is ${difftimeseconds} seconds.|starttime=${difftimeseconds}"
                        exit ${STATE_CRITICAL}
                else
                        echo "OK,starttime is ${difftimeseconds} seconds.|starttime=${difftimeseconds}"
                        exit ${STATE_OK}
                fi
        else
                echo "OK,starttime is ok.|starttime=0"            
监控软件

                exit $STATE_OK
        fi
else
        echo "UNKNOWN,starttime is unknown.|starttime=-1"
        exit $STATE_UNKNOWN
fi


2: 脚本使用说明
    脚本只需要传一个参数,就是进程的名字。sh check_process_starttime 'init'         
nagios配置

    脚本是按照nagios插件格式来写的            
nagios安装


3: 脚本说明
    ps -eo lstart获取脚本的启动时间,然后跟当前时间进行对比,如果超过300s,也就是已经运行了5分钟,就进行告警。

4: 脚本待优化说明
    1: 可以让critical的阀值由参数传递进去。                 
开源监控软件

    2: 得支持多个进程同时探测



想做Nagios Zabbix,Cacti,iTop各种交流的,可以进入开源监控工具Nagios交流  QQ群号 476809427




上一篇:在Nagios上怎样添加关联性告警
下一篇:面对Nagios的吵,你能做啥?
monicazhang

写了 2297 篇文章,拥有财富 12859,被 21 人关注

您需要登录后才可以回帖 登录 | 立即注册
B Color Link Quote Code Smilies

成为第一个吐槽的人

Powered by IT 运维管理
返回顶部