一、zabbix_sender 介绍
zabbix获取key值有超时时间,如果自定义的key脚本一般需要执行很长时间,这根本没法去做监控,获取数据有超时时间,如果一些数据需要执行比较长的时间才能获取的话,那么zabbix会出现异常,考虑到这种情况,zabbix增加了Trapper功能,客户端自己通过zabbix_sender提交数据给zabbix,这个通道便是trapper。使用zabbix监控类型zabbix trapper,需要配合zabbix_sender给它传递数据。执行超长时间脚本,如:脚本去几十台服务器拉去数据,每个日志都上G,然后日志整合在一起,统计出返回值。这种脚本比如超时,所以我们必须改成让客户端提交数据的方式
二、zabbix_sender命令使用
2.1命令参数
-c --config <file> #配置文件绝对路径
-z --zabbix-server <server> # zabbix server的IP地址
-p --port <server port> #zabbix server端口.默认10051
-s --host <hostname> # 主机名,zabbix里面配置的主机名(不是服务器的hostname),不能使用ip地址
-I --source-address <IP address> #源IP
-k --key <key> # 监控项的key
-o --value <key value> #key值
-i --input-file <input file> # 从文件里面读取hostname、key、value 一行为一条数据,使用空格作为分隔符,如果主机名带空格,那么请使用双引号包起来
-T --with-timestamps #一行一条数据,空格作为分隔符: <hostname> <key> <timestamp> <value>,#配合 --input-file option,timestamp为unix时间戳
-r --real-time #将数据实时提交给服务器
-v --verbose #详细模式, -vv 更详细
2.2 语法
语法一:zabbix_sender -z server -s host -k key -o value
[root@zabbix-server ~]# zabbix_sender -z 139.198.181.4 -s 139.198.181.4 -k test.key -o 9527
Response from "139.198.181.4:10051": "processed: 1; failed: 0; total: 1; seconds spent: 0.000106"
sent: 1; skipped: 0; total: 1
-z 139.198.181.4 zabbix server
-s 139.198.181.4 agent主机名,和web页面中要一致
-k test.key 自定义的key ,和web页面中要一致
-o 9527 value值,发送的值.
语法二:zabbix_sender -z server -i file
[root@zabbix-server ~]# zabbix_sender -z 139.198.181.4 -i a.txt
Response from "139.198.181.4:10051": "processed: 3; failed: 0; total: 3; seconds spent: 0.000076"
sent: 3; skipped: 0; total: 3
[root@zabbix-server ~]#
[root@zabbix-server ~]# cat a.txt
139.198.181.4 test.key1 111
139.198.181.4 test.key2 222
139.198.181.4 test.key3 333
-i # 从文件里面读取hostname、key、value 一行为一条数据
使用空格作为分隔符,如果主机名带空格,那么请使用双引号包起来
-o的值也可以引用命令
[root@zabbix-server ~]# zabbix_sender -z 139.198.181.4 -s 139.198.181.4 -k test.key5 -o $(uptime|awk '{print $6}')
使用脚本,配合计划任务
#!/bin/bash
login_users=`uptime|awk '{print $6}'`
zabbix_sender -z 139.198.181.4 -s 139.198.181.4 -k test.key5 -o $login_users
## 再计入计划任务即可
语法三 :zabbix_sender -c config-file -k key -o value
=====略=====