如何在Grafana中基于MySQL查询结果创建数据状态标识
解决Grafana中MySQL麻疹病例数据的状态颜色配置问题
先修正查询语句
你当前SQL查询的是Tuberculosis(肺结核)字段,而需求针对的是麻疹病例数,请先替换为表中实际存储麻疹病例数的字段(参考你提供的表结构截图对应字段),再通过以下两种方式实现状态颜色配置:
方法1:通过SQL返回状态标识(适合需要同时展示状态文本的场景)
修改SQL语句,用CASE逻辑生成状态列,把状态判断直接嵌入查询:
SELECT -- 替换为你表中麻疹病例数的实际字段名 Sarampion AS measles_cases, last_update, CASE WHEN Sarampion BETWEEN 0 AND 5 THEN '正常' WHEN Sarampion BETWEEN 6 AND 10 THEN '警告' WHEN Sarampion > 10 THEN '告警' ELSE '未知' END AS status FROM indicadores_de_salud WHERE id_municipio = 1 ORDER BY last_update DESC;
Grafana面板配置步骤:
- 选择Stat面板,将
measles_cases设置为主显示值 - 在字段配置中,把
status字段的显示类型设为「状态」,并绑定对应颜色:- 正常 → 绿色
- 警告 → 黄色
- 告警 → 红色
方法2:直接在Grafana面板配置阈值(无需修改SQL,适合仅需颜色标识的场景)
- 确保SQL返回正确的麻疹病例数字段(替换掉
Tuberculosis):
SELECT Sarampion AS measles_cases, last_update FROM indicadores_de_salud WHERE id_municipio = 1 ORDER BY last_update DESC;
- 选择Stat或Gauge面板,点击字段旁的⚙️图标进入字段配置
- 找到Thresholds选项,设置阈值规则:
- 阈值数组填写
[5, 10] - 对应颜色依次设置为:绿色(0-5区间)、黄色(5-10区间)、红色(>10区间)
注:若需精确边界(比如5归为正常),可调整阈值为[5.0, 10.0],并配置区间包含规则
- 阈值数组填写
内容的提问来源于stack exchange,提问作者Toms_Hd3z
相关产品推荐
相关产品推荐

