我有自定义nagios测试,可能需要一段时间才能完成(<1 - 15分钟)。有时,当测试需要一段时间时,Nagios将在下一个检查周期重新运行测试。因此,我可以看到其中几个测试同时运行。
我知道我可以增加检查周期时间,但测试通常需要大约30秒,所以我不想增加检查间隔,然后在15分钟内看不到错误。
我还考虑过在我的测试中杀死现有进程,但这会导致在nagios中生成警报(我不希望测试/结果出现故障)。
那么,有一个很好的方法来处理这个问题吗?我希望能够告诉nagios,并且如果之前的检查尚未完成,请不要运行此检查。&#34;
答案 0 :(得分:0)
每当检查开始运行时,您都可以将文件写入磁盘(确保无论成功/失败状态如何都将其删除)。
如果第二次检查产生,您可以成功退出,或者如果文件仍然存在则发出警告。
如果您拥有流程参数的唯一标识符,您还可以跳过检查流程表中是否已显示该流程(ps -ef)