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

如何使用LogQL在Grafana-Loki中绘制日志时序图表?

解决LogQL时序图表绘制问题

关键步骤与查询语句

要生成时序图表,需完成日志过滤、字段提取、时序聚合三个核心操作,直接使用以下LogQL语句即可实现:

{filename="/var/tmp/myfile/my.log"} 
|= "Val:" 
| regexp `^(?P<timestamp>\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\+\d{4}) Val: (?P<val>\d+\.?\d*)`
| line_format "{{.timestamp}} {{.val}}"
| rate_over_time({__value__=~".+"}[$__interval])

语句拆解说明

  • 过滤目标日志:{filename="/var/tmp/myfile/my.log"} |= "Val:" 先筛选出包含Val:的有效日志行,避免无效数据干扰。
  • 提取核心字段:通过regexp正则捕获两个关键分组:
    • timestamp:匹配日志开头的ISO格式时间(如2023-08-04T07:31:02+0000)
    • val:匹配Val:后的浮点数值(兼容整数、小数格式)
  • 格式化时序格式:line_format将提取的时间和数值整理为Prometheus可识别的时序结构。
  • 生成聚合时序:rate_over_time按查询面板的时间间隔($__interval)聚合数值,输出可直接绘制图表的时序数据。

注意事项

  • 检查日志中的时间合法性:你提供的日志里存在2023-08-04T51:21:02+0000这种小时为51的无效时间,会导致时间解析失败,需先修正日志中的时间格式。
  • 若需使用日志自身时间而非Loki的 ingestion 时间,需确保Loki配置开启了自定义时间戳解析,或在查询中追加| timestamp .timestamp指定使用提取的时间字段。

内容的提问来源于stack exchange,提问作者Ryu S.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 01:52:35