Jquery中文网 www.jquerycn.cn
Jquery中文网 >  脚本编程  >  shell  >  正文 linux下监控进程的shell脚本一例

linux下监控进程的shell脚本一例

发布时间:2014-11-28   编辑:www.jquerycn.cn
本文分享下,用于监控linux进程的一例shell脚本,有需要的朋友参考下吧。

1,shell脚本:check_app.sh
功能:
检测站点进程是否运行,若没运行则执行程序启动进程,然后检测站点是否能正常访问,若不能访问则kill掉站点相关进程,然后重新启动程序。

代码:
 

复制代码 代码示例:
#!/bin/sh   
#设置环境变量 
export PYTHONPATH=/python/python_workspace/python_runapp:$PYTHONPATH 
#检测进程是否运行   
isRunning=$(ps -ef | grep "app" | grep -v "grep" | grep -v "vim")   
if [ "$isRunning" ] ; then  
    echo "app service was already started"  
else  
    echo "app service was not started"  
    echo "Starting service ..."  
    python /python/application/app.py > /dev/null 2>&1 &   
fi  
  
#检测站点是否可正常访问   
#$? 指访问状态 
#0 正常   
#urls='http://www.app.com http://www.jquerycn.cn' 
urls='http://www.app.com'  
for url in $urls   
    do  
        curl -sf $url   
        state=$?   
        if [ $state != 0 ]; then  
            PIDS=`ps -ef | grep "app" | grep -v "grep" | grep -v "vim" | grep -v "sh" | awk {"print $2"}`   
            for P in $PIDS   
                do  
                    kill -9 $P   
                done  
            python /python/application/app.py > /dev/null 2>&1 &   
        else  
            echo "$url is available"  
        fi  
done 

2,添加计时任务
每20分钟执行一次
 

复制代码 代码示例:
crontab -e 
*/20 * * * * bash /sh/check_app.sh

您可能感兴趣的文章:
一个自动监控进程的shell脚本
linux shell 监控网卡流量的脚本(入门参考)
如何用shell脚本分析网站日志统计PV、404、500等数据
shell脚本实例与shell参数用法
mysql备份与同步脚本
Linux Shell判断程序是否运行的代码分享
shell监控网站状态 监测网站运行状态的shell脚本
监控网卡流量的shell脚本分享
监控Linux服务器网站状态的SHELL脚本
linux下监视进程挂掉后自动重启的shell脚本

[关闭]