0

我已经安装了 elastAlert。下面是我的配置和yaml文件配置:

配置文件:

规则文件夹:规则

运行_每个:

分钟:15

缓冲时间:

分钟:15

es_host: ip_address(#####)

es_port:9200

writeback_index: elastalert_status

writeback_alias: elastalert_alerts

警报时间限制:

天数:2 记录:版本:1

增量:假

disable_existing_loggers:假

格式化程序:

logline:

  format: '%(asctime)s %(levelname)+8s %(name)+20s %(message)s'

handlers:

  console:
    class: logging.StreamHandler
    formatter: logline
    level: DEBUG
    stream: ext://sys.stderr
  file:
    class : logging.FileHandler
    formatter: logline
    level: DEBUG
    filename: elastalert.log
loggers:
  elastalert:
    level: WARN
    handlers: []
    propagate: true
  elasticsearch:
    level: WARN
    handlers: []
    propagate: true

Example_frequency.yaml 文件:

es_host: ip地址(####)

es_port:9200

名称:故障异常

类型:频率

索引:logstash_*

事件数:5

大体时间:

分钟:15

筛选:

-询问:

query_string:

    query: "ErrorGroup: Fault Exception"

警报:-“电子邮件”

电子邮件:-“abc@gmail.com”

我每 15 分钟收到一次邮件,但该数据与错误组名称应为故障异常的过滤器不匹配。请帮助我理解这一点,因为我自过去 4 天以来一直在努力,在此先感谢。

4

1 回答 1

0

希望不是很晚,但是可以使用--es_debug_trace命令行选项。它有助于查看在 curl 中发送的确切查询:

python3 -m elastalert.elastalert --verbose --rule your_rule_to_test.yaml --es_debug_trace /tmp/elastalert_curl.log

然后可以在终端中触发curl 命令/tmp/elastalert_curl.log以查看输出或调整以查看问题所在。您可以使用 Kibana Dev Tools 来检查 curl 命令并进行测试。还要确认ErrorGroup是在文档索引的根级别并尝试ErrorGroup.keyword

于 2021-06-22T15:35:45.120 回答