zabbix_sender高效模式
1、zabbix_sender介绍
zabbix获取key值有超时时间,如果自定义的key脚本一般需要执行很长时间,这根本没法去做监控,获取数据有超时时间,如果一些数据需要执行比较长的时间才能获取的话,那么zabbix会出现异常,考虑到这种情况,zabbix增加了Trapper功能,客户端自己通过zabbix_sender提交数据给zabbix,这个通道便是trapper。使用zabbix监控类型zabbix trapper,需要配合zabbix_sender给它传递数据。执行超长时间脚本,如:脚本去几十台服务器拉去数据,每个日志都上G,然后日志整合在一起,统计出返回值。这种脚本比如超时,所以我们必须改成让客户端提交数据的方式。
2、agent端安装
安装zabbix_sender,无需安装zabbix_agent
rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-sender-3.0.18-1.el7.x86_64.rpm
3、使用
3.1 server端创建一个监控项
选择主机并创建监控项
自定义名称,类型选择zabbix采集器(zabbix trapper),键值自定义为user_logins

3.2 agent端使用sender发送数据
命令参数说明:
-c --config 配置文件绝对路径
-z --zabbix-server zabbix server的IP地址
-p --port zabbix server端口.默认10051
-s --host 主机名,zabbix里面配置的主机名(不是服务器的hostname),不能使用ip地址
-I --source-address 源IP
-k --key 监控项的key
-o --value key值
-i --input-file 从文件里面读取hostname、key、value 一行为一条数据,使用空格作为分隔符,如果主机名带空格,那么请使用双引号包起来
-T --with-timestamps 一行一条数据,空格作为分隔符: ,配合 --input-file option,timestamp为unix时间戳
-r --real-time 将数据实时提交给服务器
-v --verbose 详细模式, -vv 更详细
最简易使用方法一:
zabbix_sender -z server -s host -k key -o value
最简易使用方法二:
zabbix_sender -c config-file -k key -o value
最简易使用方法三:
zabbix_sender -z server -i file
例如:
[root@db01 ~]# zabbix_sender -z 192.168.1.63 -s db01 -k user_logins -o 5
info from server: "processed: 0; failed: 1; total: 1; seconds spent: 0.004215"
sent: 1; skipped: 0; total: 1
[root@db01 ~]# zabbix_sender -z 192.168.1.63 -s db01 -k user_logins -o 8
info from server: "processed: 1; failed: 0; total: 1; seconds spent: 0.000042"
sent: 1; skipped: 0; total: 1
server查看最新数据

-o的值也可以引用命令:
[root@db01 ~]# zabbix_sender -z 192.168.1.63 -s db01 -k user_logins -o $(uptime|awk '{print $4}')
3.3使用脚本发送数据
[root@db01 scripts]# pwd
/service/scripts
[root@db01 scripts]# vim monitor_users.sh
#/bin/bash
login_users=`uptime|awk '{print $4}'`
zabbix_sender -z 192.168.1.63 -s db01 -k user_logins -o $login_users
执行脚本即可向server发送数据,可以进一步添加定时任务实现定时发送数据
3.4 使用zabbix_sender批量发送数据
首先多准备几个zabbix_trapper类型的监控项
编写批量列表,每行以hostname、key、value的方式
[root@db01 ~]# cat a.txt
db01 login.users 12
db01 login.users1 13
db01 login.users2 14
db01 login.users3 15
测试
[root@db01 ~]# zabbix_sender -z 192.168.1.63 -i a.txt
博主原创文章,转载请务必注明出处
zabbix_sender高效模式的更多相关文章
- 单例模式之懒汉模式,懒汉模式之高效模式,DLC双判断模式
import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.ThreadPoolExecutor; imp ...
- hadoop mapreduce求解有序TopN(高效模式)
1.在map阶段对数据先求解改分片的topN,到reduce阶段再合并求解一次,求解过程利用TreeMap的排序特性,不用自己写算法. 2.样板数据,类似如下 1 13682846555 192.16 ...
- Linux系统编程温故知新系列 --- 01
1.大端法与小端法 大端法:按照从最高有效字节到最低有效字节的顺序存储,称为大端法 小端法:按照从最低有效字节到最高有效字节的顺序存储,称为小端法 网际协议使用大端字节序来传送TCP分节中的多字节整数 ...
- 9 I/O复用
I/O复用使得程序能够同时监听多个文件描述符,适用于以下情况: 客户端同时处理多个socket,比如非阻塞connect 客户端同时处理用户输入和网络连接,比如聊天室程序 TCP服务器同时处理监听so ...
- Linux下的I/O复用与epoll详解
前言 I/O多路复用有很多种实现.在linux上,2.4内核前主要是select和poll,自Linux 2.6内核正式引入epoll以来,epoll已经成为了目前实现高性能网络服务器的必备技术.尽管 ...
- 三组I/O复用模型的比较
概论: select.poll和epoll三组I/O复用系统调用,这3组系统调用都能同时监听多个文件描述符.它们将等待由timeout参数指定的超时时间,直到一个或者多个文件描述符上有事件发生时返回. ...
- 转: Apache SSI详解及应用
转: Apache SSI详解及应用 什么是 SSI? SSI(Server Side Includes),是嵌套在 HTML 网页中的指示语句,由后台服务器进行代码的解释计算.使用 SSI 可以动态 ...
- 服务器编程入门(7)I/O复用
问题聚焦: 前篇提到了I/O处理单元的四种I/O模型. 本篇详细介绍实现这些I/O模型所用到的相关技术. 核心思想:I/O复用 使用情景: 客户端程序要同时处理多个socket ...
- arduino pro mini不能下载
刚毕业时就知道arduino,但当时崇拜技术极致,喜欢把单片机的性能用到尽,觉得操作寄存器运行效率高,对arduino 这种高效模式贬为投机取巧,不过其中也一直对arduino 有关注. 随着芯片技术 ...
随机推荐
- mysql的乐观锁和悲观锁
悲观锁与乐观锁是两种常见的资源并发锁设计思路,也是并发编程中一个非常基础的概念.本文将对这两种常见的锁机制在数据库数据上的实现进行比较系统的介绍. 悲观锁(Pessimistic Lock) 悲观锁的 ...
- 【飞天奔月出品】memcached四大注意事项(key长度,空格限制,最大item)
1. key值最大长度? memcached的key的最大长度是250个字符. 注意250是memcached服务器端内部的限制(可以修改) 如果您使用的客户端支持"key的前缀&quo ...
- SSH整合一
Spring整合Hibernate 1.引入我们所需的jar包 2.在applicationContext.xml中植入我们的数据源和sessionFactory工厂,将生成权交由Spring容器进行 ...
- HDU 5251 矩形面积(二维凸包旋转卡壳最小矩形覆盖问题) --2015年百度之星程序设计大赛 - 初赛(1)
题目链接 题意:给出n个矩形,求能覆盖所有矩形的最小的矩形的面积. 题解:对所有点求凸包,然后旋转卡壳,对没一条边求该边的最左最右和最上的三个点. 利用叉积面积求高,利用点积的性质求最左右点和长度 ...
- linux 内核库函数 【转】
转自:http://blog.chinaunix.net/uid-20321537-id-1966892.html 当编写驱动程序时,一般情况下不能使用C标准库的函数.Linux内核也提供了与标准库函 ...
- (二十)linux中i2c的ioctl,write,read函数的使用
一.ioctl函数的使用:原型:struct ioctl(struct file *file,unsigned int cmd,unsigned long arg);cmd有I2C_SLAVE,I2C ...
- Error:Execution failed for task ':app:transformClassesWithDexForDebug'. > com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.Exec
Error:Execution failed for task ':app:transformClassesWithDexForDebug'.> com.android.build.api.tr ...
- Linux平台用C++实现事件对象,同步线程
前文在Win32平台上用C++实现了事件对象Event,对线程进行同步,以达到期望目的.这次在Linux平台上实现与之类似的事件对象.与其相关的一组API包括:pthread_mutex_init,p ...
- vue.js 2的表单控件
静下心,抄一段sample,以后可以快点到这里来抄...: <!DOCTYPE html> <html> <head> <meta charset=" ...
- ActiveMQ StartUp
从http://activemq.apache.org/activemq-5132-release.html 下载 解压 从apache-activemq-5.13.2\bin\win64\wrapp ...