专业的编程技术博客社区

网站首页 > 博客文章 正文

Zabbix用批处理对多个应用程序进行状态监控并实现自动发现的方法

baijin 2024-08-08 23:01:46 博客文章 89 ℃ 0 评论

学习使用zabbix多年,一直在实践研究具体的实践方法,满足生产环境中的监控需求,今天利用zabbix对某台服务器进行多个应用程序进行状态监控,也就是利用批处理脚本对多个进程进行状态监控。

1、准备两个脚本(全部来自于网络)

脚本一:findexe.bat

作用是在zabbix系统自动发现exe程序。内容:

@echo off


setlocal enabledelayedexpansion


set /a n=0


set /a n1=0


for %%i in (%*) do (set /a n+=1)


@echo {"data":[


for %%a in (%*) do (


set /a n1+=1


@echo {"{#SERVERNAME}":"%%a"


if !n1! neq !n! (


@echo },


) else (


@echo }


)


)


echo ]}

脚本二:check_exe_status.bat

获取exe进程的状态。

@echo off


tasklist|findstr ^%1 >/NUL 2>&1


if %errorlevel% == 0 (


echo "Running!"


) else (


echo "NoRunning!"


)

2、被监控服务器

把两个脚本文件复制到被监控的服务器上

修改zabbix的配置文件,增加如下内容:

UserParameter=findexe[*],"C:\zabbix\findexe.bat" $1

UserParameter=check_status[*],"C:\zabbix\check_exe_status.bat" $1

重启zabbix agent服务。

3、zabbix服务端配置

创建监控模板Template check exe service

在创建的模板中创建自动发现规则,发现exe进程。

键值就是我们在被监控服务器的配置文件中配置的参数名称,中括号中的参数为需要监控的exe进程名称,多个用空格隔开。

创建监控项

键值为在被监控服务器配置文件中的参数名称。

4、验证

把新建的模板添加到主机中

关掉被监控服务器的浏览器,查看最新监控数据。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表