侧边栏壁纸
博主头像
爱运维 博主等级

行动起来,活在当下

  • 累计撰写 197 篇文章
  • 累计创建 143 个标签
  • 累计收到 21 条评论

目 录CONTENT

文章目录

zabbix监控windows服务器的服务状态

Administrator
2017-01-05 / 0 评论 / 0 点赞 / 5 阅读 / 0 字

生产环境中需求监控windows的某个服务是否正常,不能局限的只监控windows是否在线,如下是两种方法。


第一种(简单):通过key:service_state[service]监控

   步骤,在zabbix服务端设置新建监控项,加入一个新建的监控项,如下范例监控DNS服务,主要添加

    

key:service_state[service]说明:

service_state[service] State of service. 0 - running, 1 - paused, 2 - start pending, 3 - pause pending,

4 - continue pending, 5 - stop pending, 6 - stopped, 7 - unknown, 255 - no such service

返回0表示运行,返回6表示关闭,返回7表示未知,返回255表示没有。

第二种:复杂,不过可以扩展干其他。通过脚本监控

1.在windows主机上新建一个脚本,判断服务是否在线,并向server发送值

脚本:

放在c:\chick.bat



@echo off
set srvname=%1
for /f "skip=3 tokens=4" %%i in ('sc query %srvname%') do set "zt=%%i" &goto :next
:next
if /i "%zt%"=="RUNNING" (
    echo 1
) else (
    echo 0
)
脚本说明:接收一个参数(服务名),判断是否在线,在线返回1,否者返回0



修改windows agent的配置文件zabbix_agentd.win:

添加如下:如果是服务名中间有空格就加双引号


UnsafeUserParameters=1
UserParameter=servicestate.dns,c:\chick.bat dns
UserParameter=servicestate.vss,c:\chick.bat vss
重启windows zabbix agentd服务,然后在zabbix的服务端测试


测试正常后添加监控项和图形,就能发现监控图形

测试结果:

    


0

评论区