You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求Grafana Loki每日5点无日志触发告警的正确查询语句

解决Grafana Loki每日5点告警前一日缺失日志的问题

原查询的问题

你使用的固定偏移量offset 16h25m属于硬编码值,仅能在特定时间点匹配到正确的日志窗口。一旦告警评估时间变动,这个偏移量会导致查询的时间范围错位,无法精准覆盖前一天完整的24小时日志,进而使告警逻辑出现偏差。

正确的查询方案

要实现每日5点检查前一天00:00至当天00:00的目标日志是否存在,需用动态偏移量适配时间窗口,推荐查询语句:

count_over_time({env="dev", app="test-app"} |= "YOUR Test Keyword" [1d] offset (time() % 86400)) == 0

语句解释

  • time() % 86400:计算当前时间在当天的秒数(例如5点对应5*3600=18000秒),以此作为动态偏移量。
  • 结合[1d]使用后,查询窗口会从“最近24小时”偏移为“前一天00:00到当天00:00”,确保无论当天何时执行查询,都能精准覆盖前一日完整日志范围。

告警规则配置补充

  • 在Grafana告警规则中,将评估触发时间设为每日05:00,可使用cron表达式0 5 * * *,或设置评估间隔为24小时,确保每天仅在5点执行一次检查。
  • 若日志可能在次日0点到5点之间延迟出现,可调整时间窗口为[29h]并偏移5h,覆盖前一天0点到当天5点的范围,避免遗漏延迟日志:
    count_over_time({env="dev", app="test-app"} |= "YOUR Test Keyword" [29h] offset 5h) == 0
    

内容的提问来源于stack exchange,提问作者Avin Varghese

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 17:15:55