前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >通用的进程监控脚本process_monitor.sh使用方法

通用的进程监控脚本process_monitor.sh使用方法

作者头像
一见
发布2018-08-02 09:57:04
9600
发布2018-08-02 09:57:04
举报
文章被收录于专栏:蓝天

通过需要将process_monitor.sh放到crontab上,以便系统重启自动生效,也可避免process_monitor.sh被意外终止导致失效,crontab的时间部分一般设置为1分钟执行一次,如:* * * * *。 不用做任何修改,即可用process_monitor.sh监控各种进程。 源码下载:https://github.com/eyjian/mooon/blob/master/mooon/shell/process_monitor.sh。 使用之前,请给process_monitor.sh带上可执行权限,不带任何参数执行process_monitor.sh时显示帮助信息。 运行process_monitor.sh,需要指定两个参数: 1)参数1:被监控的对象,支持同一程序带不同参数的分别监控,典型的如java程序 2)参数2:被监控的对象不存在时,重拉起脚本或命令 参数1又可分成两部分: 1)被监控对象,如java程序,不含参数部分,值需要和ps看到的完全相同,比如ps看到的是绝对路径,则也需为绝对路径; 2)参数匹配部分,一个用于区分同一程序不同进程的源自于参数的字符串。这部分是可选的,只有当被监控对象以不同参数在同一机器上同时运行时才需要指定。 建议将process_monitor.sh放到目录/usr/local/bin下,以方便使用。 示例1:监控ZooKeeper进程(假设ZooKeeper安装目录为/data/zookeeper,JDK安装目录为/usr/local/jdk) /usr/local/bin/process_monitor.sh "/usr/local/jdk/bin/java -Dzookeeper" "/data/zookeeper/bin/zkServer.sh start" 上面的“-Dzookeeper”为参数的一部分,借助它可以区分于其它java程序,比如HDFS DataNode为“-Dproc_datanode”: /usr/local/bin/process_monitor.sh "/usr/local/jdk/bin/java -Dproc_datanode" "/data/hadoop/sbin/hadoop-daemon.sh start datanode" 参数2无匹配部分使用示例: /usr/local/bin/process_monitor.sh "/usr/local/ip2location/bin/ip2location" "/usr/local/ip2location/bin/ip2location --num_worker_threads=8 --num_io_threads=2" 放在crontab中的示例: * * * * * /usr/local/bin/process_monitor.sh "/usr/local/ip2location/bin/ip2location" "/usr/local/ip2location/bin/ip2location --num_worker_threads=8 --num_io_threads=2"

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017/05/24 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档