每隔几个小时唤醒监控进程的监控守护进程

我在configurationmonit守护进程时会看到一个monitconfiguration问题,每隔几个小时唤醒一次,并开始监视设置为“Not Monitored”状态的进程。

问题:当监视器更改为不监视某个进程时,状态更改为“不受监视”,即使使用新的正确PID更新PID文件,监视STOPS也不会再次尝试启动该进程的监视这个过程将永远存在,除非monit守护进程被再次手动唤醒,如下所示。

在这个过程的监视configuration中,每个进程的唤醒守护进程是否可以在特定的超时间隔进行configuration,以避免进程永远处于“不受监视”状态的陷阱?

就像2如果在3个周期内重新启动,则超时{X小时}监视器重新启动

谢谢。

我有一个snmp进程下面的configuration。

 #检查cmaeventd进程
用pidfile /var/run/cmaeventd.pid检查进程cmaeventd
组snmp-agents
 start program =“/ opt / hp / hp-snmp-agents / storage / etc / cmaeventd start”
 stop program =“/ opt / hp / hp-snmp-agents / storage / etc / cmaeventd stop”
如果2在3个周期内重新启动,则超时

出于某种原因,如果PID文件没有正确填充(我正在修复它),monit一直试图重新启动进程,使用空pid文件在monit日志中抛出下面的错误,最后在它失败后“unmonitor”它在我们configuration的3个周期内重新启动。

日志消息:

 [PST Feb 3 11:43:23] error:monit:从文件'/var/run/cmaeventd.pid'读取pid错误
 [PST Feb 3 11:43:24] error:monit:从文件'/var/run/cmaeventd.pid'读取pid错误

 [PST Feb 3 11:45:25]错误:'cmaeventd'服务在2个周期内重新启动2次 -  unmonitor

unmonitor之后的进程的监视状态:

进程'cmaeventd'
  状态不受监视
  监控状态不受监控
  数据收集2015年2月3日12:10:25

手动唤醒该进程的守护进程以再次启动监视:

 >监视cmaeventd 

这将唤醒此进程的monit守护进程,并开始再次读取PID文件,如果成功,则启动监控。 

在唤醒这个进程的监控守护进程之前:
 -------------------------------------------------- - 
 logbash-3.1#ls -l /var/run/cmaeventd.pid
 -rw -r  -  r-- 1 root root 1 2 3 3 00:00 /var/run/cmaeventd.pid
 logbash-3.1#cat /var/run/cmaeventd.pid

 logbash-3.1#ps -ef | grep cmaeventd | grep -v grep
根13066 1 0 00:00?  00:00:00 cmaeventd -p 15 -l /var/log/hp-snmp-agents/cma.log
升
 logbash-3.1#echo“13066”> /var/run/cmaeventd.pid
 logbash-3.1#cat /var/run/cmaeventd.pid
 13066

 logbash-3.1#监视cmaeventd

从日志:

 [PST Feb 3 12:20:54] info:根据用户请求监视服务“cmaeventd”
 [PST 2月3日12:20:54] info:mont守护进程在23515唤醒
 [PST Feb 3 12:20:54] info:用户定义的信号唤醒1
 [PST Feb 3 12:20:54] info:'cmaeventd'监视动作完成

监视状态:

进程'cmaeventd'
  状态初始化
  监视状态初始化
  数据收集2015年2月3日12:20:54

在某个时间之后改变到下面:

进程'cmaeventd'
  状态运行
  监视状态
   pid 13066
  家长pid 1
  正常运行时间12小时21分钟
  儿童0
  内存千字节2160
  内存千字节总计2160
  记忆百分比0.0%
  记忆百分比总计0.0%
   CPU百分比0.0%
   cpu占总数的百分比0.0%
  数据收集2015年2月3日12:21:54

Monit不需要监视每个HP代理。 另外,它们都与封装服务hp-snmp-agents绑定在一起。 独立重新启动将会产生不良影响。

尽pipe可以debuggingHP代理日志,但我认为您的旧内核(看起来像RHEL / CentOS 5.5)和可能的旧HPpipe理代理可能存在问题。 您应该使用的HP代理位于SDR存储库 。

对于ProLiant DL3xx G7平台,您将需要以下软件包的最新版本:

hp-snmp-agents, hpssa, hp-health, hp-smh-templates, hpsmh, hpssacli, hponcfg