alert - Grafana:如何根据两个事件创建警报?
问题描述
如果每个相同网关last_hour_mins_average_status
> 3.4 和> 75,我需要创建警报。last_five_mins_requests_to_gateway_gauge_count
有以下输入:
# HELP last_five_mins_requests_to_gateway_gauge_count labels: gatewayId
# TYPE last_five_mins_requests_to_gateway_gauge_count gauge
last_five_mins_requests_to_gateway_gauge_count{gatewayId="34"} 1
last_five_mins_requests_to_gateway_gauge_count{gatewayId="38"} 32
last_five_mins_requests_to_gateway_gauge_count{gatewayId="44"} 34
last_five_mins_requests_to_gateway_gauge_count{gatewayId="51"} 23
last_five_mins_requests_to_gateway_gauge_count{gatewayId="68"} 14
last_five_mins_requests_to_gateway_gauge_count{gatewayId="75"} 1
last_five_mins_requests_to_gateway_gauge_count{gatewayId="76"} 71
last_five_mins_requests_to_gateway_gauge_count{gatewayId="79"} 1
和
# HELP last_hour_mins_average_status Average value by message status by last 60 minutes
# TYPE last_hour_mins_average_status gauge
last_hour_mins_average_status{gatewayId="34"} 1.6923
last_hour_mins_average_status{gatewayId="38"} 1.5004
last_hour_mins_average_status{gatewayId="44"} 1.1569
last_hour_mins_average_status{gatewayId="51"} 1.7835
last_hour_mins_average_status{gatewayId="62"} 8.0000
last_hour_mins_average_status{gatewayId="68"} 1.3075
last_hour_mins_average_status{gatewayId="75"} 1.2727
last_hour_mins_average_status{gatewayId="76"} 1.3703
last_hour_mins_average_status{gatewayId="78"} 1.0000
last_hour_mins_average_status{gatewayId="79"} 2.1622
我创建了查询 A:
avg_over_time(lox24_sms_last_five_mins_requests_to_gateway_gauge_count[1m])
和查询 B:
avg_over_time(lox24_sms_last_hour_mins_average_status[1m])
和警报条件(UI形式):
when avg() of query(A, 5m, now) is above 75
and avg() of query(B, 5m, now) is above 3.4
当任何 gatewayId 的消息数 > 75 并且任何 gatewayId 的平均状态 > 3.4 时,都会发生警报。
但只有当这两种情况都发生在同一个 gatewayId 时,我才需要提醒。
解决方案
这是应该执行此操作的 Prometheus 查询(尚未测试,但应该可以):
last_five_mins_requests_to_gateway_gauge_count > 75
and
last_hour_mins_average_status > 3.4
推荐阅读
- aws-codebuild - 如果配置需要 8 分钟,那么在 CodeBuild 中使用 BUILD_GENERAL1_2XLARGE 有什么意义?
- python - 如何从字符串中提取熊猫索引的属性
- python - pyconfig.h:尝试使用 cpp/python 的 boost 时没有这样的文件或目录
- namespaces - 带有命名空间属性替换的 xmlstarlet
- python-3.x - 关闭 Tkinter 窗口时关闭所有线程
- javascript - 我的一个网页的页脚宽度在小屏幕上比它应该缩小的多,并且没有出现在底部 - 如何纠正它?
- sorting - ag-grid 行排序不适用于小数和空值
- java - 为什么它有一个 Java 泛型编译错误?
- dotnetnuke - 从外部代码,如何在没有模块的情况下访问 DynamicCode?
- c# - C#查询没有dpi乘数的windows屏幕底层分辨率