http://blog.51cto.com/xiao987334176/1769766

有一个通知队列,如果超过了一定的值,就需要报警一下

查询接口可以返回队列的数量,格式是json,data后面的数量就是队列的数量

{"code":0,"message":"成功","data":22}

在zabbix客户端编辑配置文件zabbix_agentd.conf

vim /usr/local/zabbix-agent/zabbix_agentd.conf

添加蓝色部分

LogFile=/tmp/zabbix_agentd.log

###zabbix 服务端地址

Server=192.168.1.110

##agent服务监听地址,也就是本机地址

#ListenIP=192.168.1.105

ServerActive=192.168.1.110

##zabbix-server端主机地址(zabbix server)

Hostname=zabbix server

#允许所有字符的参数传递给用户定义的参数

UnsafeUserParameters=1

#用户自定义key,格式: UserParameter=key名,执行命令

#例如:serParameter=system.test,who|wc -l

UserParameter=inform_queue,/usr/local/php/bin/php /usr/local/zabbix-agent/script/inform_queue.php

创建目录script

mkdir script

直接用shell过滤不太好,用php是比较好的

vim inform_queue.php

代码如下:

<?php

$str = file_get_contents('http://10.x.x.x/app/inform_queue');

$json=json_decode($str);

echo $json->data;

?>

测试执行php代码就可以得到数字22

重启zabbix客户端

killall -9 zabbix_agentd

/usr/local/zabbix-agent/sbin/zabbix_agentd -c /usr/local/zabbix-agent/etc/zabbix_agentd.conf

进入zabbix服务器,使用zabbix_get

zabbix_get参数说明:

-s --host: 指定客户端主机名或者IP

-p --port:客户端端口,默认10050

-I --source-address:指定源IP,写上zabbix server的ip地址即可,一般留空,服务器如果有多ip的时候,你指定一个。

-k --key:你想获取的key

测试key值是否生效

/usr/local/zabbix/bin/zabbix_get -s 192.168.1.105 -p10050 -k inform_queue

有数字返回说明就可以了。

进入zabbix服务器的后台页面

点击配置->主机,点击名称下面的一台主机(修改配置文件的那台)

点击监控项->创建监控项

输入名称,选择类型,信息类型是数字,因为脚本执行返回的格式是数字

输入应用集名称

点击更新

点击触发器->创建触发器

输入名称

表达式: {host_1:inform_queue.min(1m)}>3

表示队列最后1分钟内超过3那么触发器表达式将会返回true

选择严重性,点击更新

点击图形->创建图形

输入名称,选择纵轴固定,可固定

添加监控项,点击更新

点击监测中->图形

选择主机,选择图形inform_queue

等待几分钟,就会有数据了。

zabbix 3.0.2自定义脚本的更多相关文章

  1. zabbix 获取不到自定义脚本的值解决

    agent端: zabbix 自定义脚本 [root@localhost script]# cat check_ping.sh #!/bin/bash result=$(/usr/local/nagi ...

  2. (48)zabbix报警媒介:自定义脚本Custom alertscripts

    自定义脚本媒介.zabbix会将信息传递给脚本,接下来你在脚本里面随意处理,一共会传递三个参数,按顺序接受也就是$1,$2,$3了,为了方便记忆,一般分别给他们赋值到To\Subject\body 配 ...

  3. Zabbix的通知功能以及自定义脚本告警

    本节内容: Zabbix的通知功能 定义接收告警的用户 定义Action Zabbix自定义脚本发送报警邮件 一.Zabbix的通知功能 在配置好监控项和触发器之后,一旦正常工作中的某触发器状态发生改 ...

  4. 一键安装 zabbix 3.0 版本 脚本

    原文地址: http://blog.csdn.net/u012449196/article/details/53859068 本文修改了原文中的部分错误,此脚本适用于zabbix 2.0 或 3.0 ...

  5. 一键安装 zabbix 2.0 版本 脚本

    原文地址: http://blog.csdn.net/u012449196/article/details/53859068 本文修改了原文中的部分错误,此脚本适用于zabbix 2.0 版本,以版本 ...

  6. zabbix 自定义脚本监控activemq

    1. 编写获取activemq队列积压消息(check-amq.sh) #!/bin/bash QUEUENAME=$ MQ_IP='172.16.1.56' curl -uadmin:admin h ...

  7. zabbix自定义脚本监控服务器端口状态

    zabbix可以通过客户端的[net.tcp.port[<ip>,port]]该item监控项来判断本地/远程服务器TCP端口是否正常,不过当时没有想起来,就用了自定义脚本去写的,很久没有 ...

  8. Zabbix 3.0 从入门到精通(zabbix使用详解)

    第1章 zabbix监控 1.1 为什么要监控 在需要的时刻,提前提醒我们服务器出问题了 当出问题之后,可以找到问题的根源   网站/服务器 的可用性 1.1.1 网站可用性 在软件系统的高可靠性(也 ...

  9. Zabbix 3.0 基础介绍 [一]

    zabbix 简介 Zabbix 是一个高度集成的网络监控解决方案,可以提供企业级的开源分布式监控解决方案,由一个国外的团队持续维护更新,软件可以自由下载使用,运作团队靠提供收费的技术支持赢利 zab ...

随机推荐

  1. PHP练习题三

    1.用PHP打印出前一天的时间格式是2006-5-10 22:21:21. echo date(‘Y-m-d H:i:s’, strtotime(‘-1 days’)); 2.不使用第三个变量交换两个 ...

  2. (补充一)CountDownLatch

    引言:  在学习单例模式时候,用到了锁synchronized的概念,在多线程中又用到了CountDownLatch的概念 CountDownLatch是一个同步工具类,它允许一个或多个线程一直等待, ...

  3. sql server 2014 在windows server 2012 上安装Analysis Services

    Analysis Services Account Name : NT AUTHORITY\SYSTEM

  4. 移动端给img元素添加content: "";

    误给img原始添加 content: "";属性后发现在ios系统中图片是不会显示的android系统是正常的

  5. Android中获取资源的id和url方法总结

    一,获取android工程里面的各种资源的id; 1.1 string型 比如下面: << string name=”OK”>> 客户端请求成功 << / stri ...

  6. python关于sys.argv列表的应用场景

    python关于sys.argv列表的应用场景 1.需求很简单: 使用 sys.argv 获取命令行参数(即要判断的文件名),然后判断文件是否存在,文件存在再进一步判断是否有读权限 2.分析: (1) ...

  7. ffmpeg的centos、msys2、msvc编译

    msys2 和 centos https://ffmpeg.org/download.html https://ffmpeg.zeranoe.com/builds/ Windows MSYS2准备 1 ...

  8. 反汇编工具 objdump的使用简介

    arm-linux-objdump -D led.elf > led_elf.dis objdump是gcc工具链中的反汇编工具,作用是由编译链接好的elf格式的可执行程序反过来得到反汇编代码 ...

  9. Struts03---参数传递

    package cn.bdqn.bean; /** * *用户的实体类 */ public class User { private String name; private String passw ...

  10. Android 用户界面---定制组件(Custom Components)

    基于布局类View和ViewGroup的基本功能,Android为创建自己的UI界面提供了先进和强大的定制化模式.首先,平台包含了各种预置的View和ViewGroup子类---Widget和layo ...