社区
Linux/Unix社区
帖子详情
如何用守护进程来监控另一个进程的状态
gcc_gun
2009-08-14 10:40:48
如题,当另一个进程状态僵死或者不可用的时候,守护进程就会去重新启动这个进程,这如何能够实现,请各位DX帮忙~~~
...全文
916
8
打赏
收藏
如何用守护进程来监控另一个进程的状态
如题,当另一个进程状态僵死或者不可用的时候,守护进程就会去重新启动这个进程,这如何能够实现,请各位DX帮忙~~~
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
gcc_gun
2009-08-21
打赏
举报
回复
[Quote=引用 7 楼 vicky1982 的回复:]
假设要监控的进程名称为test,TargetProcessName为启动该进程的脚本
while [ 0 ]
do
Result=$(ps -ef | grep -v grep |grep "test")
if [ "" == "$Result" ]
then
RecordTime=$(date)
echo "Restar test" >>$LogFile
nohup $TargetProcessName>>$LogFile &
sleep 2
fi
Result=
done
[/Quote]
谢谢,这种方法是实现了如果进程列表中没有该进程的话,就执行相应的程序。
但是我现在想要实现的是进程状态不正常的时候就对其进行重启。
我现在的做法是:用父进程去创建这个进程,然后调用waitpid(),该函数在子进程状态改变为不正常的时候会返回,根据返回值做一些相应的处理。
另外,根据进程占用CPU使用率的情况也可以获得一些信息,但是用TOP来获取CPU占用率比较困难,但是TOP是实时的,信息比较准。
vicky1982
2009-08-19
打赏
举报
回复
假设要监控的进程名称为test,TargetProcessName为启动该进程的脚本
while [ 0 ]
do
Result=$(ps -ef | grep -v grep |grep "test")
if [ "" == "$Result" ]
then
RecordTime=$(date)
echo "Restar test" >>$LogFile
nohup $TargetProcessName>>$LogFile &
sleep 2
fi
Result=
done
threeleafzerg007
2009-08-18
打赏
举报
回复
回楼上 都能 status 有一系列的宏 对应可以检测。
threeleafzerg007
2009-08-17
打赏
举报
回复
你说的一般都是一个watch dog 进程 一旦被监视进程死掉了 对吧 就立马重启一下。
也简单, 用watch dog进程 fork 被监视进程 然后 waitpid上 根据 返回的status 决定进一步的操作。
用脚本估计也是行的。
gcc_gun
2009-08-17
打赏
举报
回复
怎么没有人来看看呢。。。小弟急啊~~~
gcc_gun
2009-08-17
打赏
举报
回复
[Quote=引用 4 楼 threeleafzerg007 的回复:]
你说的一般都是一个watch dog 进程 一旦被监视进程死掉了 对吧 就立马重启一下。
也简单, 用watch dog进程 fork 被监视进程 然后 waitpid上 根据 返回的status 决定进一步的操作。
用脚本估计也是行的。
[/Quote]
对啊,是指的这个意思,呵呵,谢谢啊~~~
waitpid能够返回进程的僵死啊,异常这些状态吗?我去查一下。
另外再问一下,守护进程能否完成此项工作的?
gcc_gun
2009-08-14
打赏
举报
回复
谢谢一楼的回复,你回复的网址不知道为什么我打不开~~~
在这过程中我自己找到了一个,但是效果不好~~~当一个进程处于(SL)状态的时候,我没有找到这个状态是什么意思,猜想应该是中断的意思吧,那个脚本就没有作用了,进程一直处于死的状态,kill是不起作用的了,不知道是怎么回事~~~我里面也没有用到什么信号量啊这些会导致相互等待的东西,请帮忙,谢谢~~~
猫已经找不回了
2009-08-14
打赏
举报
回复
http://www.zrway.com/news/news_in.jsp?RecNo=332
其实写个脚本监控即可
weblogic
守护
进程
:
监控
weblogic
进程
,当发现
进程
停止时调用重启脚本重启
#脚本名称:sysWeblogicMonitorRestart.sh #功能:weblogic
守护
进程
:
监控
weblogic
进程
,当发现
进程
停止时调用重启脚本重启 #参数:
进程
唯一标识码,例如“weblogic” #依赖脚本:数据库操作脚本dbExecurteSQL.sh,weblogic重启脚本$PSSC_DOMAIN/startPssc.sh #数据库操作脚本资源:https://download.csdn.net/upload/10975286 功能: 1.获得IP地址 2.获取时间字符串 3.按时间和脚本文件名产生带日期的日志 4.根据关键字获取
进程
号 5.根据关键字获取
进程
数量 6.当
进程
数量是0的时候调用重启脚本重启
进程
7.写数据库函数发短信 8.输出
监控
结果 调用方法:
监控
weblogic,若发现异常则重启
进程
,并发送短信(入库) sh $shpath/sysWeblogicMonitorRestart.sh "weblogic"
linux
进程
监控
和
进程
守护程序
主要功能: 1.读取配置文件程序 2.启动
进程
3.
监控
进程
,查看
进程
是否退出或者崩溃 4.若
进程
退出或者崩溃,重启程序。 5.支持sleep功能 6.
进程
若连续崩溃NUM_MAX次就进行相应的睡眠周期
进程
监控
和守护 linux C
进程
监控
进程
守护 linux C语言 j
进程
重启
进程
管理 利用linux C语言编写,读取配置文件里面要求启动的程序,并进行实时
监控
,若
进程
异常退出,就重新启动 主要功能: 1.读取配置文件程序 2.启动
进程
3.
监控
进程
,查看
进程
是否退出或者崩溃 4.若
进程
退出或者崩溃,重启程序。 5.支持sleep功能 6.
进程
若连续崩溃NUM_MAX次就进行相应的睡眠周期
android双
进程
守护,
进程
很难被杀死demo
android双
进程
守护,
进程
很难被杀死
VC版
进程
守护源代码
进程
守护程序,完整VC源代码,网上下载。
Linux/Unix社区
23,224
社区成员
74,537
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章