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

Grafana面板刷新时在数据与无数据间闪烁问题排查(Loki+JSON日志)

Grafana v12.3.0 + Loki 面板交替显示数据/无数据问题排查

现象描述

  • 仪表盘开启自动刷新(5秒/10秒)
  • 多个面板(Geomap、Time series、Table)交替呈现两种状态:
    • ✅ 正常展示预期数据
    • ❌ 显示“No data”
  • 上述状态循环往复

数据源与日志背景

  • 数据源:Loki
  • 日志格式:通过Promtail摄入的JSON行日志
  • 日志标签稳定:包含job="project"、log_type="traps",以及type/layer/trapId等标签

数据有效性验证(Loki API稳定返回数据)

在Grafana显示“No data”的同一时间范围,直接调用Loki API可稳定获取结果:

curl -sG "http://127.0.0.1:3100/loki/api/v1/query_range" \
  --data-urlencode 'query={job="project",log_type="traps"} | json | __error__=""' \
  --data-urlencode "start=${START_NS}" \
  --data-urlencode "end=${NOW_NS}" \
  --data-urlencode "limit=50"

说明Loki数据摄入无问题,不稳定现象出现在Grafana的查询/面板处理环节。

示例日志结构(已脱敏)

{
  "t": 1234567890,
  "type": "trap",
  "ip": "REDACTED",
  "trapId": "GW_REQ",
  "reason": "rid=REDACTED",
  "layer": "gateway",
  "route": "GET /something",
  "ua": "REDACTED",
  "geo_country": "SomeCountry",
  "geo_country_code": "XX",
  "geo_city": "SomeCity",
  "geo_lat": 0,
  "geo_lon": 0,
  "dst_lat": 0,
  "dst_lon": 0
}

面板使用的基础Loki查询

{job="engchat",log_type="traps"} | json | __error__=""

Geomap面板具体配置

  • 图层类型:Markers
  • 位置模式:Coords(使用提取的JSON字段作为经纬度)
  • 部分标记点闪烁更频繁(非所有点同时消失)
  • 应用的转换操作:
    • 提取JSON字段
    • 将经纬度字段转换为数值型
    • (可选)分组/整理字段

核心问题与咨询方向

为何Loki的query_range接口持续返回数据时,Grafana面板会交替显示有效结果与“No data”?

需要以下方向的指导:

  • Geomap + Loki + JSON + 转换操作的已知问题
  • 查询选项(interval / max data points / direction / step)是否会导致交替空帧
  • 聚合/转换操作是否会间歇性产生“无字段”情况,触发“No data”
  • 稳定跨刷新结果的最佳实践

内容的提问来源于stack exchange,提问作者Xin Lok

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.11 14:52:39