自定义LLD规则

时间:2016-01-20 14:51:06

标签: zabbix

我想在zabbix中监控我的pfsense网关,我需要你的帮助来进行低级别的发现。 目前,我有一个脚本,它返回一个像这样的json对象:

{
  "data":[
    {"{#GATEWAY}":"WAN_SFRGW", "{{#LOSS}}":"0.0"},
    {"{#GATEWAY}":"WAN_NUMERICABLE_DHCP", "{{#LOSS}}":"0.0"}
  ]
}

我在主机设置中创建了发现规则:

  • 名称:网关
  • 类型:Zabbix剂(活性)
  • Key:gateways

Filters中没有任何内容。

然后,我如何获取JSON中的信息?我试图创建一个项目原型但我无法在Monitoring -> Overview中看到结果。 我想保存数据包丢失,将它们与接口关联起来,如果它是>则发出警报。 X%,但我不知道怎么做。 我在项目原型中尝试了一些设置,但我不知道如何调试,如果它真的可能。

问候。

1 个答案:

答案 0 :(得分:2)

JSON中存在错误:它应该是{#LOSS}而不是{{#LOSS}}

修复后,您可以创建一个项目原型,如下所示:

gateway[{#GATEWAY}]

从此项目原型中,将创建以下项目:

gateway[WAN_SFRGW]
gateway[WAN_NUMERICABLE_DHCP]

您还可以创建如下所示的触发器原型:

{host:gateway[{#GATEWAY}].min(#3)} > {#LOSS}

这将创建以下触发器:

{host:gateway[WAN_SFRGW].min(#3)} > 0.0
{host:gateway[WAN_NUMERICABLE_DHCP].min(#3)} > 0.0

希望这能描述一般的想法,假设我正确地理解了你的意图。当然,您需要将gateway[]项替换为实际收集某些数据的项。

https://www.zabbix.com/documentation/2.4/manual/discovery/low_level_discovery的官方文档中详细介绍了低级别发现的过程。