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

基于Loki日志构建Grafana仪表盘:动态统计各msg类型日志数量

解决Loki动态msg类型统计问题

要自动统计所有动态变化的msg类型出现次数,无需逐个手动查询,你可以利用Loki的JSON解析+分组聚合能力实现,具体查询语句如下:

sum by (app, msg) (
  count_over_time(
    {namespace="health-helper-stg"} | json | __error__ = "" | msg != "" [$__range]
  )
)

语句说明:

  • {namespace="health-helper-stg"}:指定目标命名空间,缩小查询范围
  • | json:解析日志中的JSON结构,自动提取msg、app等字段
  • | __error__ = "":过滤掉JSON解析失败的无效日志,避免干扰统计结果
  • | msg != "":只保留包含有效msg字段的日志条目
  • count_over_time(...) [$__range]:统计Grafana当前选择时间范围内,每个日志流的出现次数
  • sum by (app, msg):按应用(app)和消息类型(msg)分组,汇总每个分组的总次数

Grafana表格配置:

  1. 选择Loki作为数据源,粘贴上述查询语句
  2. 切换到「表格」可视化类型
  3. 在「字段」设置中,将app和msg设为维度列,Value列对应计数结果
  4. 可按需添加排序规则(比如按计数降序),或格式化数字显示

注意事项:

  • 如果msg是JSON嵌套字段(如.content.msg),需调整解析逻辑,例如用| json content.msg as msg指定提取路径
  • 若日志量过大,可添加额外过滤条件(如app="xxx")缩小查询范围,提升性能
  • 确保日志为标准JSON格式,否则| json解析会失败,需先调整日志输出格式

内容的提问来源于stack exchange,提问作者Illthizam Nazar

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 15:07:42