使用Zabbix API,如何获取项目/资源的值而不仅仅是ID?

时间:2014-04-01 10:31:22

标签: ruby monitoring zabbix

我在Zabbix的自定义屏幕中有一些数据,并希望通过API从屏幕中提取数据。我正在使用这个Ruby gem:https://github.com/express42/zabbixapi

我能够成功连接和查询,但我得到的结果不是很有用:

p zbx.query(
    :method => "item.get",
    :params => {
      :itemids => "66666",
      :output => "extend"
    }
  )

# [{"itemid"=>"66666", "type"=>"0", "snmp_community"=>"", "snmp_oid"=>"", "hostid"=>"77777", "name"=>"Fro Packages", "key_"=>"system.sw.packages[davekey1|davekey2|davekey3|davekey4]", "delay"=>"300", "history"=>"90", "trends"=>"365", "status"=>"0", "value_type"=>"1", "trapper_hosts"=>"", "units"=>"", "multiplier"=>"0", "delta"=>"0", "snmpv3_securityname"=>"", "snmpv3_securitylevel"=>"0", "snmpv3_authpassphrase"=>"", "snmpv3_privpassphrase"=>"", "formula"=>"1", "error"=>"", "lastlogsize"=>"0", "logtimefmt"=>"", "templateid"=>"88888", "valuemapid"=>"0", "delay_flex"=>"", "params"=>"", "ipmi_sensor"=>"", "data_type"=>"0", "authtype"=>"0", "username"=>"", "password"=>"", "publickey"=>"", "privatekey"=>"", "mtime"=>"0", "flags"=>"0", "filter"=>"", "interfaceid"=>"25", "port"=>"", "description"=>"", "inventory_link"=>"0", "lifetime"=>"30", "snmpv3_authprotocol"=>"0", "snmpv3_privprotocol"=>"0", "state"=>"0", "snmpv3_contextname"=>""}]

你可以看到它为项目返回了一堆ID,包括正确的键,但我似乎无法获得实际的纯文本,这是我的数据感兴趣的。

我从screen_id开始,然后获得了screenitem_id,现在是item_id,但我似乎没有接近我想要的东西!

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

获取项目或获取主机意味着获取其描述,而不是数据。你在history之后。强烈建议阅读实际的Zabbix用户手册和API文档。

相关问题