一千萬個為什麽

搜索

如果使用Sensu在一定時間範圍內多次檢查失敗,如何將支票標記為警告或錯誤?



某個檢查有效,但應在用戶收到通知之前在一定範圍內檢查多次。

多個Sensu屬性,可以進行配置。這份清單已經咨詢過,但沒有找到解決辦法。如果檢查在某個時間範圍內多次失敗,是否可以將支票標記為警告或錯誤?

也許聚合是一個選項,但是如果這不適用於多個客戶端而不是用它來支票?

<�預> <�代碼> {   “客戶”:15,   “檢查”:2,   “結果”:{     “好”:18,     “警告”:0,     “關鍵”:1,     “未知”:0,     “總數”:19,     “陳舊”:0   } } </代碼>

轉載註明原文: 如果使用Sensu在一定時間範圍內多次檢查失敗,如何將支票標記為警告或錯誤?

一共有 2 個回答:

您希望使用 occurrences 過濾器,其中包括默認在Sensu

首先,將過濾器應用於您的處理程序:

{
  "handlers": {
    "email": {
      "...": "...",
      "filters": ["occurrences"]
    }
  }
}

然後,在您的支票中,您可以使用 occurrences 屬性僅在檢查失敗或觸發連續特定次數時觸發處理程序:

{
  "checks": {
    "check-http": {
      "...": "...",
      "occurrences": 2
    }
  }
}

https://sensuapp.org/docs/0.28/reference/ plugins.html#檢查定義的屬性

在其他答案中定義的 occurrences 是必需的(+1)。 refreshinterval 也是需要的。

刷新和事件必須分配給支票。不需要改變處理程序。

"a-check": {
  "command": "echo hello"
  "occurrences": 6,
  "refresh": 60,
  "interval": 10
},

https://gist.github.com/calebhailey/8a30a00c6aadfebf7f767444f0a3df49

interval 表示檢查執行多少秒後。刷新意味著在 60秒之後發送通知,並且發生意味著如果在60秒內事件被觸發了6次,那麽通知將被發送。

看來公式如下:

occurrences * interval = refresh

10 * 10 = 100