2016-02-25 40 views
1

是否有任何創建過濾器的方法來過濾每個n:th事件,其中n對於不同的檢查是不同的。 I.e我想在每個檢查中指定一個字段,以便我可以控制不同檢查的過濾器頻率。過濾每第n個事件

我有一些檢查每天運行一次,一些檢查每小時運行一次,一些每分鐘運行一次。使用相同的過濾器來過濾每個n:次發生將不適用於不同的檢查。

有什麼辦法避免創建10個不同頻率的不同濾波器?

編輯:我還必須創建10個不同的處理程序,每個處理程序使用不同的過濾器。不是一個非常乾淨的解決方案和非常重複的代碼。

回答

1

Sensu的好人已經實現了我所要求的。它現在還在過濾器部分使用替換令牌。

{ 
    "filters": { 
    "occurrences": { 
     "negate": true, 
     "attributes": { 
     "occurrences": "eval: value > :::check.occurrences|60:::" 
     } 
    } 
    } 
} 
0

您是否嘗試過Mutators?我真的沒有嘗試過,但根據描述,他們可以幫助您在到達處理程序之前操縱支票的輸出。 理論上你可以操縱輸出來「正常化」。

恐怕是不可能實現你只用過濾器試過的東西。

+0

不幸的是,mutator是在過濾器之後運行的。我在Sensu的git中提出了一個關於mutator和filter的順序的問題,我們將會看到。 – Kobbe