Grafana连接SQLite数据库时Timeseries时序图无法正常工作问题咨询
Grafana 时序图数据格式化解决方案
核心格式要求
Grafana Timeseries 面板对数据集有两个强制要求,任意一个不满足就会触发你遇到的两类报错:
- 必须包含至少1个时间类型的字段,对应报错
Data does not have a time field - 必须包含至少1个数值类型的字段,对应报错
No numeric fields found
具体格式化操作
- 时间字段处理
- 优先用Unix时间戳(支持秒/毫秒精度)作为时间字段值,若用字符串格式必须符合ISO8601规范,示例合法值:
1716822600000、2024-05-27T19:10:00+08:00 - 在查询的「Transform」标签页选择
Convert field type转换功能,将时间列的类型明确设置为Time,避免被Grafana自动识别为字符串类型 - 确保时间列无空值、无格式混乱的异常值,否则会导致类型识别失败
- 优先用Unix时间戳(支持秒/毫秒精度)作为时间字段值,若用字符串格式必须符合ISO8601规范,示例合法值:
- 数值字段处理
- 要展示的指标值必须为纯数值,不要存储为带引号的字符串、包含单位的文本(比如不要存
"32.5ms",要拆成数值32.5+单位单独配置) - 同样通过
Convert field type功能,将指标列的类型明确设置为Number - 若需要多序列拆分,可额外增加字符串类型的维度标签列,该列为非必填项,不会影响基础渲染
- 要展示的指标值必须为纯数值,不要存储为带引号的字符串、包含单位的文本(比如不要存
配置参考截图



常见场景补充校验
- 若使用SQL类数据源(MySQL/PostgreSQL等),需确保查询返回的时间字段是
datetime/timestamp类型,数值字段是int/float/decimal类型,不要通过SQL函数转成字符串输出 - 若使用CSV/JSON等静态数据源,导入时需手动指定各列的类型,不要使用默认的自动识别
内容的提问来源于stack exchange,提问作者bchoi
相关产品推荐
相关产品推荐

