首页 电脑 电脑学堂 查看内容

记录系统进程异常脚本

2011-5-16 11:50 954 0

摘要:   今天中午突然收到nagios的报警,有2台服务器的process超出了阀值,而且那几分钟内都飚得很高,因为当时临时有点事,稍等了会上服务器后一看,没发现啥错误日志,也不知道是哪个程序导致的,这就比...
关键词: 程序 process 脚本 报警 procnum 日志 kill 进程 当然 当时

  今天中午突然收到nagios的报警,有2台服务器的process超出了阀值,而且那几分钟内都飚得很高,因为当时临时有点事,稍等了会上服务器后一看,没发现啥错误日志,也不知道是哪个程序导致的,这就比较郁闷了,所以写了比较简单的记录日志的脚本,以防止以后再飚起来还是无法查找原因。  脚本如下:  #!/bin/bash  #monprocess.sh  #此脚本主要用来判断在主机中的进程突然增大时,是哪个程序导致的,并且在发现此问题时可以及时的通知到运维人员。  host=`hostname`  Mailto="[email protected]"  procnum="200"  if [ `ps -ef |wc -l` -gt $procnum ];then  ps -ef |awk '{a[$8]++}END{for(i in a){print a[i],i}}'|sort -rn |head -15 >/root/process.log  echo -e "$host's process more than $procnum" |mail -s "Process is beyond the threshold in `date '+%m/%d/%Y %H:%M'`" $Mailto  fi  #报警的只是附带的,主要是记录下当时进程的日志,方便我们在接到报警后,登陆上去后查看是什么哪个程序导致的,也方面查找一些原因。当然也可以在程序后面  添加判断,判断如果是我们的的生产程序出了故障导致,可以直接kill掉程序,然后等确认kill完毕后,再重启服务。如果不是主程序的,那就退出或直接Kill。当然  只是建议。
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部