zabbix自定义监控规则

这里先需要再zabbix端安装一个测试工具,用于测试自定义的规则是否可用
查看可以安装的工具:
yum list all |grep zabbix
进行安装
yum install zabbix-get.x86_64

现在举一个监控进程状态的例子

  1. 先编写脚本,这个脚本可以是python也可以是shell,下面以shell为例子
    1)无需传参数的脚本
#!/bin/sh

ret_ok=1
ret_warn=0

info_count=`/etc/init.d/workflow status|grep running|wc -l` #进程在运行中
#echo ${info_count}
#process_count=$((${info_count}-0))
if [[ ${info_count} == 1 ]]; then
      echo ${ret_ok} #成功返回1,打印出来就会被zabbix接收,zabbix触发器也是比较这个值
else
      echo ${ret_warn} #失败返回0
fi

2)可以传参数的脚本

#!/bin/sh

ret_ok=1
ret_warn=0
model=$1 #接收一个参数,用于监控不同模块
info_count=`/etc/init.d/$1 status|grep running|wc -l`
#echo ${info_count}
#process_count=$((${info_count}-0))
if [[ ${info_count} == 1 ]]; then
      echo ${ret_ok}
else
      echo ${ret_warn}
fi
  1. 修改zabbix_client的配置文件
    3.4模块好像不用配置,我的没有配置,但是网上很多人都手动配置了一下
vim /etc/zabbix/zabbix_agentd.conf
Include=/etc/zabbix/zabbix_agentd.d/*.conf
  1. 创建一个conf文件
    vim /etc/zabbix/zabbix_agentd.d/check_process.conf
    填入下面两行
UserParameter=checkworkflow,sh /home/zabbix/moniterworkflow.sh #监控单个模块,对应的是没有传参的那个脚本
UserParameter=checkmodel[*],sh /home/zabbix/moniall.sh $1 #监控多个模块,对应的是可以传参的脚本
  1. 再到zabbix-server上去测试一下
 不传参的:
[root@localhost ~]# zabbix_get -s 200.200.169.212 -k "checkworkflow"
1
传参的
[root@localhost ~]# zabbix_get -s 200.200.169.212 -k "checkmodel[workflow]"
1
  1. 配置到web端监控
    键值需要自己输入,选择里面是没有的
    这里写图片描述
  2. 添加触发器
    这里写图片描述
  3. 查看结果
    这里写图片描述
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值