0

我在设置 elastalert 规则时遇到了一些困难。这是一个非常基本的文档,我已经阅读了文档,但显然没有理解它,我正在寻求一些帮助。
我有一个基本的测试规则,当我从某些设备输入到弹性的数据停止超过 5 分钟时,我想提醒它。

es_host: localhost
es_port: 9200
name: Example rule
type: flatline
index: test_mapping-*
threshold: 1
timeframe:
    minutes: 5
filter:
- term:
   device: "ggYthy767b"
alert:
- command
command: ["/bin/test"]
realert:
 minutes: 10 

这是有效的,所以当数据停止时,我会收到一个警报,然后该警报会被静音,直到 10 分钟后它再次发出警报。问题是它每 10 分钟发出一次警报,我不知道如何阻止它。有没有办法让它只发生一次然后停止?还是我误解了?此外,我有 10 多个不同的设备,如果其中任何一个停止发送数据 5 分钟,我希望应用相同的警报,这可能在一个规则内吗?首先十分感谢。

4

1 回答 1

0

您需要问自己的问题是您希望多久收到一次警报。一生一次,一年一次,一个月一次还是每两周一次?所以“realert”是你要编辑的部分。您可能希望将其更改为如下所示。因此,即使警报被多次触发,您每天也只会收到一次。它使用简单的英语术语,因此您可以根据自己的喜好(周、小时等)对其进行更新。

realert:
  days: 1

但是如果你收到的警报比你想要的多得多,要么是你的系统太不稳定,要么是你的警报太偏执。例如,对于每 5 分钟一次的警报,您正在寻找一条实际上没有填充的记录。您应该提高您的经期或添加选择性较低的过滤器,因为它是一个“扁平线”警报。您也可以将它与“query_key”一起使用,以便将其应用于每个键。

于 2017-07-02T23:27:48.850 回答