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. [CF489D]Unbearable Controversy of Being

    题目大意:求有向图中这种图的数量 从分层图来考虑,这是一个层数为3的图 枚举第一个点能到达的所有点,对他们进行BFS求第三层的点(假装它是BFS其实直接枚举效果一样) 代码: #include< ...

  2. Swift学习笔记 - 位移枚举的按位或运算

    在OC里面我们经常遇到一些枚举值可以多选的,需要用或运算来把这些枚举值链接起来,这样的我们称为位移枚举,但是在swift里面却不能这么做,下面来讲解一下如何在swift里面使用 OC的位移枚举的区分 ...

  3. Spring注解(环境)

    以数据库为例: 引入 c3p0数据源maven坐标 数据库驱动 @Configuration @PropertySource("classpath:/db.config.properties ...

  4. hibernate 实体对象的三种状态以及转换关系。

    最新的Hibernate文档中为Hibernate对象定义了四种状态(原来是三种状态,面试的时候基本上问的也是三种状态),分别是:瞬时态(new, or transient).持久态(managed, ...

  5. v-model和sync修饰符

    场景: 在用vue开发的过程中我们经常会遇到父子组件共用同一变量的情况,那么在这种情况下,我们肯定会想直接 把变量传过来用,因为是双向绑定的所以子组件就会修改这个变量,这样在vue中时会报错的. 问题 ...

  6. ssh登录CentOS服务器(Aliyun)

    ssh登录 (一).在本机使用命令生成ssh密钥:(-C代表注释,如果有多个密钥,加个注释就会很好区分) ssh-keygen -t rsa -C "mingwei" (二).将本 ...

  7. java枚举和constant使用区别

    本文结合<Effective Java>第六章前半部分关于枚举的介绍和自己的理解及实践,讲解了Java枚举的知识点.文章发布于专栏Effective Java,欢迎读者订阅. 前言  你代 ...

  8. go 编译

    linux: set GOARCH=amd64 set GOOS=linux go build -o app_name main.go echo "编译完成,任意键退出" paus ...

  9. <mvc:default-servlet-handler/>的作用

    优雅REST风格的资源URL不希望带 .html 或 .do 等后缀.由于早期的Spring MVC不能很好地处理静态资源,所以在web.xml中配置DispatcherServlet的请求映射,往往 ...

  10. 服务器(Ubuntu 12.04 LTS)上编译基于OpenCV的项目遇到的问题及解决方案

    问题1:OpenCV编译安装时出错,错误信息中提到要打开-fPIC 选项重试. 解决方案:使用如下命令运行CMake cmake -DWITH_1394=OFF -DWITH_CUDA=OFF -DW ...