测试特定进程*是否在运行 Windows 7 并连接到 zabbix 服务器的主机上运行的正确方法是什么?
后阅读我有点明白使用该proc_info
项目是我需要的,并且我认为测试物理内存大于零是正确的,所以我尝试了以下触发器:
{HOST_NAME:proc_info[TestProcess.exe,wkset,sum].last(0,0)}<1
但这会出现错误:
函数 {HOST_NAME:proc_info[TestProcess.exe,wkset,sum].last(0,0)} 评估失败 <1
我的触发器有什么问题?或者我可以定义更好的项目?
*(该过程应该一直运行,大部分时间处于空闲状态)
答案1
我设法通过将触发器函数修复为来纠正此问题,last(#1)
因为last()
该函数需要 2 个参数,其中第二个参数是时间移位并且是可选的。在这里,我不需要时间偏移,而是需要最新的可能值,所以我将其删除了。
这里的第一个论点是选择哪个最后一个值,所以这里我需要最后一个值,用数字符号来表示最后一个值,而不是几秒前的最后一个值。
完整的触发器是:
{HOST_NAME:proc_info[TestProcess.exe,wkset,min].last(#1)}<1
这里的比较是以 KB 为单位的,我修改了type
在里面进程信息到min
只是为了在我有多个同名进程的情况下增强条件。当这种情况发生时,触发器就会执行,我就会知道进程有问题。