如何在Grafana中不硬编码多个查询即可按分组绘制各分组对应折线
Grafana批量展示多公司时序折线操作方案
- 前提确认:首先确保你的时序数据已将「公司名称/唯一标识」作为*标签(Tag/Label)*存储,而非写死在指标名或字段值中,这是实现动态批量查询的基础
- 单条查询实现多序列生成:仅需写1条带分组逻辑的查询语句即可,不需要单独为每家公司写查询,不同数据源的参考写法如下:
- Prometheus数据源:在指标查询语句末尾加
by (company),将company替换为你实际存储公司信息的标签名即可,Grafana会自动为每个公司标签值生成单独的时序折线 - InfluxDB数据源:查询时添加
GROUP BY "company"配置,直接返回所有公司对应的分组时序数据 - SQL类时序库(如TimescaleDB、TDengine等):查询语句中将
company作为分组字段,同时在Grafana的查询配置中指定按该字段拆分时序序列即可
- Prometheus数据源:在指标查询语句末尾加
- 异常排查适配优化:针对你关注边界突破、异常值的场景,可以做几个显示配置提升排查效率:
- 将所有折线的默认透明度调至20%~30%,异常凸起的数值点会非常醒目,不需要区分96条线的各自归属就能快速发现异常
- 配置固定阈值告警线,超过阈值的时序部分会自动高亮,进一步降低异常识别成本
- 图例支持点击筛选,后续需要定位异常所属具体公司时,直接点击图例中对应公司名称即可单独展示该公司的时序线
内容的提问来源于stack exchange,提问作者David Boshton
相关产品推荐
相关产品推荐

