2022 Zabbix中国峰会
2022 Zabbix中国峰会

13 捕捉器监控项

概述

捕捉器监控项接收传入的数据,而不是查询它。

对于任何你想要推送到Zabbix的数据都是使用的。

要使用捕捉器监控项,你需要:

  • 在Zabbix中建立一个捕捉器监控项
  • 将数据发送到Zabbix

配置

监控项配置

配置捕捉器监控项:

  • 进入: ConfigurationHosts
  • 在主机的那一行,点击 Items
  • 点击 Create item
  • 输入表单中监控项的参数

标有红色星号的为必填字段

需要捕捉器监控项的特定信息的字段是:

Type 这里选择 Zabbix trapper
Key 输入一个用于在发送数据时识别该监控项的键.
Type of information 选择与将要发送的数据格式相对应的信息类型
Allowed hosts 以逗号分隔的IP地址列表或主机名,可选择以CIDR表示法.
如果指定, 那么只有从这些指定的主机传入的连接才会被接受.
如果启用了IPv6, '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' 是一样的, '::/0' 将允许任何IPv4 或 IPv6地址。
'0.0.0.0/0' 可用于允许任何IPv4地址.
注意, "IPv4兼容的IPv6地址"(0000::/96前缀)能够被支持,但 RFC4291不推荐使用。
示例: Server=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.domain
从Zabbix 2.2.0开始,允许使用空格和 user macros

在保存监控项之后,您可能需要等待最多60秒的时间,直到服务器从配置缓存更新中获取更改,然后才能发送值。

数据发送

在最简单的情况下,我们可以使用 zabbix_sender 程序来发送一些“测试值”:

zabbix_sender -z <server IP address> -p 10051 -s "New host" -k trap -o "test value"

我们使用下列这些键来发送值

-z - 指定Zabbix server的IP地址

-p - 指定Zabbix server的端口(默认为10051)

-s -指定主机(请确保在此使用“技术含义”的 主机名 ,而不是“可见”名称)

-k - 指定我们之前定义的监控项的键值

-o - 指定要发送的实际值

Zabbix trapper进程不会扩展监控项键值中使用的宏,以检查目标主机对应的监控项键值是否存在。

展示

这是 Monitoring → Latest data 的结果

时间戳

如果使用“zabbix_sender”从具有时间戳的文件发送值,那么将会调整这些时间戳以匹配服务器的时间。例如,如果一个监控项的时间戳是“10:30:50”,zabbix_sender机器上的当前时间是“10:40:03”,Zabbix server主机的时间是"10:40:05",那么该监控项的值将以“10:30:52”的时间戳存储在数据库中。

类似地,如果一个值首先发送到Zabbix proxy,然后再将其发送到Zabbix server,那么时间戳将首先会被调整以匹配Zabbix proxy的时间,然后再被调整以匹配Zabbix server的时间。