使用Sensu忽略对Uchiwa的依赖性检查

时间:2017-11-28 13:15:46

标签: monitoring sensu uchiwa

我目前正在使用sensu和Uchiwa试图摆脱Zabbix,问题是一些检查仍然存在,即使他们依赖于其他检查。 例如: 我有一个检查,检查vpn进程是否处于活动状态:

    "vpn-process": {
  "command": "check-process.rb -f /var/run/openvpn/client.pid",
  "subscribers": [
    "uni"
  ],
  "interval": 60,
  "dependencies": [
    "http-url1",
    "http-url2",
    "http-url3"
  ]
},

我还检查了http响应,但如果vpn关闭,这不应该工作。

    "http-url1": {
  "command": "python /etc/sensu/plugins/check-http.py https://url",
  "subscribers": [
    "uni" 
  ],
  "interval": 60
}, 

然而,Uchiwa警告有关VPN检查的HTTP检查。 Uchiwa showing VPN and HTTP checks

我读到了dependency check filters,但据我所知,它仅适用于处理程序而Uchiwa不是handler

2 个答案:

答案 0 :(得分:1)

看来你不能使用Uchiwa作为处理程序(我和维护者一起检查过),每次VPN关闭时我都必须在python中编写自己的API来调用API,并且我不希望将这些检查静音显示在仪表板中。这样我就创建了自己的依赖项。

答案 1 :(得分:0)

Uchiwa显示系统中当前的事件状态 - 它是检查/事件的被动视图,而处理程序是活动的。即使VPN已关闭,HTTP检查也将按计划执行,无论您是否具有依赖关系过滤器,它都将被视为CRITICAL

如果VPN关闭,那么让HTTP检查而不是的唯一方法会导致CRITICAL值,如果您在某种程度上能够在HTTP检查中检查该情况并返回一个不同的值而不是CRITICAL。但是,VPN关闭可能看起来与其他与网络相关的问题非常相似,因此最好避免这种情况。

也许尝试将VPN和HTTP检查转换为check aggregate