Zabbix 使用 python 脚本创建新项目并添加数据值

Zabbix Create new item and add data value using python script

zabbix 新手和 python 此处。

我有一个 python 脚本,它将:

  1. 从zabbix中获取item "item_key",如果不存在,则使用zabbix api,

    创建
     item=zapi.item.create(hostid=host_id, 
                           name=fault_description, 
                           key_=item_key, 
                           type=7, # Zabbix agent (active) 
                           value_type=3,
                           type=3, 
                           interfaceid=interface_id, 
                           delay=10)
    
  2. 然后一旦创建了项目,我将使用 pyzabbix 向 zabbix 上的项目发送一些默认值

    resultDefault = send_to_zabbix([Metric(host_name, item_key, OK_VAL, (cur_s))],
                                   '127.0.0.1', 10051)
    

    注意:

    cur_s = 是项目创建时的当前时间戳

    OK_VAL = 0

我有问题,在 send_to_zabbix 之后,zabbix 似乎没有接收到我的 OK_VAL 并且在我的 zabbix 上 "Latest data" 中仍然没有显示任何数据,尽管 send_to_zabbix return 为真。

但是,如果我 运行 几次 send_to_zabbix() 到该项目,该项目将仅在 OK_VAL 后 1 分钟(大约 40-50 秒后更新)项已创建)。

请问,是否可以让zabbix在我的item创建后不用等待1分钟就收到数据?或者zabbix上有什么配置可以缩短时长吗?

谢谢!

此致, 珍妮

尝试使用:

value_type=3,  # numeric value
type=0,        # decimal number

检查文档,也许我错了。此外,您使用了 2x 类型,可能第二个应该是 data_type=0.

编辑 zabbix_server 的 CacheUpdateFrequency 配置,这样配置缓存将更频繁地更新 - 默认为 60 秒。