shell实现简单的进程监控脚本

一个简单的需求:shell实现进程监控watchdog功能,配合计划任务每分钟执行一次shell脚本,对进程进行监控,如果意外中断那么启动他,如果正常则什么都不需要去做。

#!/bin/bash
NAME=java
NOP=/bin/true
DATE=$(/bin/date +”%Y-%m-%d %H:%M:%S”)
ps -ef | awk -F ” ” ‘{print $8,$2}’ | grep ^java >/dev/null 2>&1
case “$?” in
0)
# It is running in this case so we do nothing.
echo “$NAME is RUNNING OK. Relax.”
$NOP
;;
1)
echo “$NAME is NOT RUNNING. Starting $NAME and sending notices.”
java -jar sms.jar 2>&1 >/dev/null &
NOTICE=/tmp/watchdog.log
echo “$NAME was not running and was started on $DATE” >> $NOTICE
esac
exit 0

更多学习:http://www.demopu.com/?p=247

时间: 2024-12-10 03:54:48

shell实现简单的进程监控脚本的相关文章

AIX进程监控脚本分享一例

分享一个AIX进程监控脚本: 当MWM进程数大于2时,调用sendmail发送邮件通知用户,脚本如下 #!/usr/bin/ksh #---------------------------------------------------------------# # Script Name : MWM Check Shell # Created by  : Xin23 #         on  : 2015.02.04 #------------------------------------

shell的简单批量curl接口脚本

shell脚本可以说作用非常大,在服务器领域,用shell操作事务可比手动点击要方便快捷得多了.虽然只是文字界面,但是其强大的处理功能,会让各种操作超乎想象.而且,也可以将这些习惯移植到日常的工作当中,提升办事效率. 其实shell语法很简单,基本上就是综合一下在命令行下,一个个的命令集合,然后就组成了shell脚本.当然了,不懂语法的,百度搜索一下就好了嘛,毕竟,重要的是思想而非语法. 最近,刚接一需求,如下: DBA会将一些服务规则的数据导出,然后一条条手动去curl某应用接口,从而完成相应

AIX进程监控脚本分享(二)

脚本实现功能:    当MWM进程数量大于2并且占用CPU时间超过100时发送邮件报警,脚本如下: #!/usr/bin/ksh #---------------------------------------------------------------# # Script Name : MWM Check Shell # Version     : 3 # Created by  : Xin23 #         on  : 2015.02.04 # Updated by  : Xin2

windows进程监控脚本

有一些老的业务在windows服务器iis站点上,部分会跑满cpu,用了个python脚本来监控进程,当cpu过高时杀死进程,同时记录日志 import psutil import os import time import logging def KillProcess(): os.kill(pid,2) def ProcessLog(): LOG_FORMAT = "%(asctime)s %(name)s %(levelname)s %(pathname)s %(message)s &qu

进程监控脚本

#!/bin/sh my_ip=`/sbin/ifconfig eth1 | grep 'inet addr' | awk '{print substr($2, index($2, ":")+1)}'` recv="" msg="not_existing, restart ..." MONITOR_LOG="monitor.log" #monitor procname scriptname monitor() { # 查找进程

shell监控脚本

shell脚本监控网站并实现邮件.短信报警 shell进程监控脚本(发送邮件报警) Shell脚本监控服务器在线状态和邮件报警的方法 如果是139邮箱还可免费手机短信通知.注:通过系统直接发送mail容易被拦截,可使用mail连接第三方smtp发送邮件.

Shell 实现简单计算器功能

Shell 实现简单计算器功能,脚本如下: [[email protected] scripts]# cat jisuan.sh #!/bin/bash print_usage(){     printf $"USAGE:$0 NUM1 {+|-|*|/} NUM2\n"     exit 1 } #判断传入的参数是不是3个 if [ $# -ne 3 ]   then     print_usage fi firstnum=$1 secondnum=$3 op=$2 #对传入的参数进

linux shell脚本守护进程监控svn服务

最近搭建的svn服务不知道什么原因服务总是被关闭(如果你不知道怎么搭建svn可以参考linux下搭建svn版本控制软件),因此用shell脚本实现一个守护进程.用于监控svn服务是否启动,如果服务不在则启动. 创建监控脚本svnmonit.sh #! /bin/sh #进程名字可修改 PRO_NAME=svnserve PORT=58652 REP_DIR=/www/svndata while true ; do #用ps获取$PRO_NAME进程数量 NUM=`ps aux | grep ${

shell脚本--监控java进程存活脚本

#!/bin/bash base_dir=/opt war_processor="tomcat" jar_processor="manager-server.jar platform-server.jar platform-item.jar platform-shop.jar platform-task.jar platform-trade.jar platform-user.jar" IP_ADDR=`ifconfig |grep inet|awk -F &quo