码迷,mamicode.com
首页 > 系统相关 > 详细

Linux下同进程多进程号实时监控

时间:2017-09-25 17:25:49      阅读:219      评论:0      收藏:0      [点我收藏+]

标签:pid   linu   awk   one   日志   roo   shel   循环   grep   

一、需求:

Linux上对一个进程名称可能会对应的多个进程号的进程进行监控,如果有多个则输出到一个日志文件。

以上问题针对的是一个定时程序还未运行结束,到下一个时刻程序又运行起来了,避免造成重复调用接口出错。

二、解决:

#!/bin/sh
#(sh pid_monitor.sh)&   #被监控的进程放在后台运行

while true       #死循环不断监控后台运行的进程
do
    pid_num=`ps -ef | grep -v grep|grep ROOT_SUB_i2_data| awk {print $2}|wc -l`  #取后台运行程序的进程号数量


    if [ $pid_num  -gt 1 ];         #判断被监控的进程数是否大于1,注意分号,shell和python是有区别的
    then
        echo 监控到多个异常进程: >>pid_monitor.log
        ps -ef |grep -v grep|grep ROOT_SUB_i2_data| awk {print $2,$5} >>pid_monitor.log #打印进程号和启动时间
    else
        echo `date` 只监控到1个进程数,正常... >>pid_monitor.log
        sleep 30 #休息30秒 
    fi
done

 

三、参考

http://blog.chinaunix.net/uid-30106268-id-5030040.html

http://www.jb51.net/article/34332.htm

Linux下同进程多进程号实时监控

标签:pid   linu   awk   one   日志   roo   shel   循环   grep   

原文地址:http://www.cnblogs.com/apff/p/7592585.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!