##elastalert规则配置
1、多个条件限制
在告警中,监控指定接口的请求时间,可以query和terms配合使用
例如:
filter:
- query:
query_string:
query: "upstream_response_time: >0.001"
- terms:
uri: ["/api/v1/mall/esShoppingItem", "/mailList/skuWhole/detail"]
官方示例:
filter:
- terms:
field: ["value1", "value2"] # value1 OR value2
在实际使用过程中,使用多个query进行配合使用,但是没有效果,所以就使用query配合terms使用
2、whitelist
过滤部分接口,不进行监控告警
例如:
type: whitelist
compare_key: "uri"
ignore_null: true
whitelist:
- /v3/connect/config
- \/
整个告警配置:
name: API错误响应(status >= 400)
type: whitelist
compare_key: "uri"
ignore_null: true
whitelist:
- /v3/connect/config
- \/
type: frequency
index: nginx-ingress-logs*
num_events: 5
timeframe:
minutes: 1
filter:
- range:
status:
from: 400
to: 599
include: ["_index","uri","remote_addr","http_x_forwarded_for","status","request_time"]