我正在使用 zabbix 进行基础设施监控。我想将警报实时导出到像 splunk、ELK 这样的集中式平台?我可以使用 Zabbix API 提取过去 15 分钟内的所有活动警报吗
另外,api 是否成熟到可以实现自动关闭功能?
提前致谢 !!!!
我正在使用 zabbix 进行基础设施监控。我想将警报实时导出到像 splunk、ELK 这样的集中式平台?我可以使用 Zabbix API 提取过去 15 分钟内的所有活动警报吗
另外,api 是否成熟到可以实现自动关闭功能?
提前致谢 !!!!
您应该使用problem.get
api:
此方法用于检索未解决的问题。如果指定,还可以额外检索最近解决的问题。
一个小python示例:
from zabbix.api import ZabbixAPI
zabbixServer = 'http://yourserver/zabbix/'
zabbixUser = 'someuser'
zabbixPass = 'somepass'
zapi = ZabbixAPI(url=zabbixServer, user=zabbixUser, password=zabbixPass)
problems = zapi.problem.get()
for problem in problems:
trigger = zapi.trigger.get (triggerids=problem['objectid'], selectHosts='extend')
interface = zapi.hostinterface.get(hostids=trigger[0]['hosts'][0]['hostid'])
group = zapi.hostgroup.get(hostids=trigger[0]['hosts'][0]['hostid'])
enabled = "Enabled"
if (trigger[0]['hosts'][0]['status'] == "1"):
enabled = "Disabled"
print "Group:{}; Host:{}; IP:{}; Problem:{}; {}".format(group[1]['name'],
trigger[0]['hosts'][0]['host'],
interface[0]['ip'],
trigger[0]['description'],
enabled )