2016-02-25 82 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