Zabbix提供了两个非常有用的维护工具,zabbix_get和zabbix_sender,这两个工具可以在Zabbix Agent安装目录的bin子目录中找到(例如:/usr/local/Zabbix/bin/
目录)。
1. zabbix_get
概述
zabbix_get是一个命令行工具,可用于从一个远程的Zabbix探针获取监控数据。
用法
zabbix_get [-hV] [-s
选项
-s
或--host
指定受监控服务器的主机名或IP地址。
-p
或--port
指定运行在受监控服务器上的探针的端口号。默认值为。
-I
或--source-address
指定来源IP地址。
-k
或--key
指定监控项的关键字,以便于获取相应的监控数据。
-h
或--help
显示帮助信息,然后退出。
-V
或--version
显示版本信息,然后退出。
示例
zabbix_get -s -p -k system.cpu.load[all,avg1]
2. zabbix_sender
概述
zabbix_sender是一个命令行工具,可用于向一个远程的Zabbix服务器发送监控数据。应当在Zabbix服务器上创建一个类型为“Zabbix trapper”的监控项,创建时还需要指定相应的监控项关键字。注意,Zabbix服务器只会接收在上述监控项的“Allowed hosts”字段中指定主机的监控数据。
用法
zabbix_sender [-hpzvIV] {-kso | [-T] -i
选项
-c
或--config
使用
config-file
指定的配置文件。zabbix_sender会从探针的配置文件中读取服务端的详细信息。在默认情况下,zabbix_sender不会读取任何配置文件。应当指定配置文件的绝对路径。zabbix_sender只会用到配置文件中的Hostname
、ServerActive
和SourceIP
参数。zabbix_sender只会使用ServerActive
参数的第一个条目。-z
或--zabbix-server
Zabbix服务器的主机名或IP地址。如果某台服务器是由代理服务器监控的,那么就应当指定代理服务器的主机名或IP地址。
-p
或--port
指定在Zabbix服务器上运行的服务端捕捉器(trapper)的端口号。默认值为。
-s
或--host
指定在Zabbix前端页面上注册的主机名。主机的IP地址和DNS名称将不会起作用。
-I
或--source-address
指定来源IP地址。
-k
或--key
指定需要发送监控数据的监控项的关键字。
-o
或--value
指定监控数据。
-i
或--input-file
从
inputfile
指定的文件中加载监控数据。若将inputfile
指定为-
,则使用标准输入。文件的每一行都是以空格分隔的格式:
。若将上述的>指定为 -
,则使用配置文件中的主机名,或者使用--host
选项指定的主机名。所有的条目都会以从上到下的顺序发送至Zabbix服务器。-T
或--with-timestamps
上述文件中每一行的格式还可以是这样的(空格分隔):
。这个选项可以和--input-file
选项配合使用。时间戳应当指定为Unix时间戳的格式。如果有某些触发器引用了目标监控项,那么所有的时间戳都应当是递增顺序的,否则事件的计算结果就会不正确。-r
或--real-time
当接收到监控数据时,便一个接一个地发送至Zabbix服务器。当从标准输入中读取监控数据时,可以使用这个选项。
-v
或--verbose
冗长模式,输出更详细的日志信息。
-h
或--help
显示帮助信息,然后退出。
-V
或--version
显示版本信息,然后退出。
退出状态
如果成功发送了监控数据,并且Zabbix服务器成功地处理了所有的监控数据,那么退出状态就是0。如果成功发送了监控数据,但是Zabbix服务器在处理时至少有一个失败了,那么退出状态就是2。如果监控数据发送失败,那么退出状态就是1。
示例
将作为mysql.queries
监控项的监控数据发送给Monitored Host
主机,这个主机就是在探针配置文件中配置的Zabbix服务器。
zabbix_sender -c /usr/local/etc/zabbix_agentd.conf -s Monitored Host -k mysql.queries -o
将data_values.txt
文件中的监控数据发送给IP地址为的Zabbix服务器。主机名和监控项关键字都会在这个文件中给出。
zabbix_sender -z -i data_values.txt
通过命令行,将带有时间戳的监控数据发送给Zabbix服务器,使用指定的探针配置文件。输入文件(-i)选项中的短划线(-)表示还应当使用上述配置文件中的主机名。
echo - hw.serial.number SQ4321ASDF | zabbix_sender -c /usr/local/etc/zabbix_agentd.conf -T -i -