centos7上的zabbix监控自定义服务
zabbix monitor custom service on centos7
我在centos 7上创建了一个服务,我尝试配置zabbix来监控该服务,我想检查该服务是否运行,如果不是则触发警报。
{my_host:net.tcp.service[my_service,127.0.0.1,11990].last()}=0
当我从配置 -> 主机 -> my_host -> 项目检查服务时,我可以看到状态已启用。
机器上的日志显示:
7720.364 active check "net.tcp.service[myservice,127.0.0.1,11990]" is not supported
请帮忙,
谢谢。
service_state
项是 Windows-only agent item(在 Zabbix 3.0 中它已弃用,取而代之的是 service.info
项)。
对于 Linux,您可能会使用 user parameter 功能创建自定义项。请注意,结果项必须是 Zabbix agent
或 Zabbix agent (active)
类型。您的自定义项目究竟应该做什么?这取决于您如何确定服务已启动。您可以检查与您的服务的连接,检查来自 initscript 或服务管理守护程序的输出等等。
如果您想避免使用用户参数,可以想到两个简单的解决方案:
- check how many processes are running with the specified name using the
proc.num
item(代理项)
- 如果您的服务侦听 TCP 端口,您可以check connectivity to it using the
net.tcp.port
or net.tcp.service
items, or check whether it listens on the required port using the net.tcp.listen
item (agent item) - or you could also check connectivity to that port from the server side using the net.tcp.service
item(简单检查项)
例如,要检查 TCP 端口 11990 上是否有响应,您可以使用 net.tcp.service[tcp,,11990]
并将项目类型设置为代理类型之一或简单检查。
我在centos 7上创建了一个服务,我尝试配置zabbix来监控该服务,我想检查该服务是否运行,如果不是则触发警报。
{my_host:net.tcp.service[my_service,127.0.0.1,11990].last()}=0
当我从配置 -> 主机 -> my_host -> 项目检查服务时,我可以看到状态已启用。
机器上的日志显示:
7720.364 active check "net.tcp.service[myservice,127.0.0.1,11990]" is not supported
请帮忙,
谢谢。
service_state
项是 Windows-only agent item(在 Zabbix 3.0 中它已弃用,取而代之的是 service.info
项)。
对于 Linux,您可能会使用 user parameter 功能创建自定义项。请注意,结果项必须是 Zabbix agent
或 Zabbix agent (active)
类型。您的自定义项目究竟应该做什么?这取决于您如何确定服务已启动。您可以检查与您的服务的连接,检查来自 initscript 或服务管理守护程序的输出等等。
如果您想避免使用用户参数,可以想到两个简单的解决方案:
- check how many processes are running with the specified name using the
proc.num
item(代理项) - 如果您的服务侦听 TCP 端口,您可以check connectivity to it using the
net.tcp.port
ornet.tcp.service
items, or check whether it listens on the required port using thenet.tcp.listen
item (agent item) - or you could also check connectivity to that port from the server side using thenet.tcp.service
item(简单检查项)
例如,要检查 TCP 端口 11990 上是否有响应,您可以使用 net.tcp.service[tcp,,11990]
并将项目类型设置为代理类型之一或简单检查。