Grafana 12 Loki:为日志级别堆叠条形图配置对应颜色
解决Grafana 12 Loki日志级别堆叠条形图颜色问题
核心问题定位
默认情况下Grafana条形图会将所有系列应用同一颜色,需按日志级别字段/标签区分系列,并为每个级别绑定对应颜色。
具体解决步骤
1. 确保查询返回按级别拆分的独立系列
使用Loki查询按日志级别分组统计,示例:
sum by (level) (count_over_time({job="你的任务名"} |= `` [1m]))
该查询会生成3个独立时间序列:level=ERROR、level=WARN、level=INFO,每个对应各自的日志计数。
2. 配置字段覆盖绑定颜色
在面板的字段选项卡中操作:
- 点击添加字段覆盖,选择
byName或byLabel匹配规则- 匹配
ERROR系列,设置颜色为红色(#dc2626) - 匹配
WARN系列,设置颜色为黄色(#ca8a04) - 匹配
INFO系列,设置颜色为绿色(#16a34a)
注意:若字段名是动态生成的,需确保匹配规则精准对应目标系列名称
- 匹配
3. 检查堆叠与显示设置
在面板的显示选项卡中:
- 开启堆叠,选择正常堆叠模式
- 确认系列模式设置为时间序列,保证每个级别作为独立条形堆叠展示
4. 清理冲突配置
若之前用过阈值或值映射,需:
- 移除针对数值的阈值配置(颜色按系列维度设置,而非数值)
- 确保值映射未覆盖字段原始标识,避免Grafana无法识别不同级别系列
5. 验证JSON配置(针对你的面板模型)
检查面板JSON中的fieldOverrides节点,确保每个级别系列都有独立颜色配置,示例片段:
"fieldOverrides": [ { "matcher": { "id": "byName", "options": "ERROR" }, "properties": [ { "id": "color", "value": "#dc2626" } ] }, { "matcher": { "id": "byName", "options": "WARN" }, "properties": [ { "id": "color", "value": "#ca8a04" } ] }, { "matcher": { "id": "byName", "options": "INFO" }, "properties": [ { "id": "color", "value": "#16a34a" } ] } ]
常见排查点
- 确认查询返回的是多个独立时间序列,而非单一系列带标签
- 检查字段覆盖的匹配规则是否正确,比如是否用
byLabel匹配level标签而非字段名 - 确保面板颜色方案设置为自定义,而非自动或固定方案
内容的提问来源于stack exchange,提问作者tm1701
相关产品推荐
相关产品推荐

