【问题标题】:How to calculate absent_over_time with label dimensional?如何用标签维度计算absent_over_time?
【发布时间】:2020-11-30 23:42:28
【问题描述】:

我有一个计数器,例如user_actions,标签为user_id。当user_actions 对任何user_id 消失时,我想得到警报。

从字面上看,我需要absent_over_time(user_actions[60m]),但考虑到user_id 标签。

【问题讨论】:

    标签: alert monitoring prometheus prometheus-alertmanager promql


    【解决方案1】:

    我无法为此任务提出 PromQL 解决方案,但可以使用 MetricsQL 的 lag() 函数来实现它。例如,以下查询将返回过去 5 分钟内没有数据点的所有 user_actions 时间序列(请参阅查询中的 5*60)。查询在 60 分钟后停止注意到此类时间序列(请参阅方括号中的 60m):

    lag(user_actions[60m]) > 5*60
    

    MetricsQL docs 中查看有关lag() 函数的更多详细信息。

    【讨论】:

    • 我是对的,我不能在 Prometheus 中使用这个解决方案,而是应该使用 VictoriaMetrics?
    • 正确 - Prometheus 还不支持lag 函数
    • 我明白了,谢谢。 VictoriaMetrics 是一个很棒的项目,但现在我有 Prometheus :(
    猜你喜欢
    • 1970-01-01
    • 2019-03-21
    • 2018-05-20
    • 1970-01-01
    • 1970-01-01
    • 2017-11-08
    • 1970-01-01
    • 2014-08-30
    • 1970-01-01
    相关资源
    最近更新 更多