Zabbix 7.0 Trapper类型条目并发上报仅存一条的问题求助
Zabbix 7.0 Trapper 条目同秒并发发送仅留存一条的解决方法
配置信息
- 操作系统:AlmaLinux release 9.4
- Zabbix Server版本:7.0.10
- MariaDB版本:10.5.22
- 监控条目配置:
- 名称:
test_message - 类型:Zabbix Trapper
- 数据类型:文本
- 名称:
问题现象
使用zabbix_sender并发发送5条test_message条目时,该条目的最新数据历史仅显示1条记录;只要条目在同一秒内被Zabbix Server接收,就只会留存一条记录。该问题在Zabbix 5.0版本中未出现,且查阅官方发布说明未找到相关变更记录,需实现5条记录全部正常显示。
解决方法
方法1:修改监控条目存储策略
在Zabbix前端编辑test_message条目:
- 进入条目配置页面,找到存储值(Store value)选项
- 将默认的「最后一个值」(Last value)修改为「所有值」(All values)
- 保存配置后重新测试,同秒内的所有条目都会被存储到历史数据中
方法2:发送时指定唯一毫秒级时间戳
若无需调整全局存储策略,可在发送时为每个条目指定不同的毫秒级时间戳,确保每个请求的时间戳不重复。示例命令:
# 发送第一条,时间戳为当前毫秒级时间 zabbix_sender -z <Zabbix_Server_IP> -s <Hostname> -k test_message -o "message1" -T $(date +%s%N | cut -b1-13) # 发送第二条,时间戳比第一条多100毫秒 zabbix_sender -z <Zabbix_Server_IP> -s <Hostname> -k test_message -o "message2" -T $(($(date +%s%N | cut -b1-13)+100))
-T参数用于指定自定义毫秒级时间戳,Zabbix 7.0支持该精度的时间戳存储,不同毫秒值的条目会被视为独立记录留存。
补充说明
Zabbix 7.0对Trapper类型条目默认存储策略做了隐性优化,默认仅保留同一秒内的最后一个值以降低存储开销。若需保留所有同秒数据,必须手动调整条目存储策略,该变更未在官方发布说明中明确提及。
内容的提问来源于stack exchange,提问作者ITO MO
相关产品推荐
相关产品推荐

