Grafana中自定义Legend的名字和自定义value的显示
发表于|更新于|监控
针对 value 的值进行修改解释
举个例子:使用 snmp_exporter 对防火墙进行监控,端口状态监控值为 1 或 2(1 是启用,2 是未启用), 在 Prometheus 中的原始数据是:
在 Grafana 中显示效果为:
其中:Value mappings 控制数值对应的显示文字。Thresholds 控制数值对应的显示颜色。
针对 Legend 修改描述文字
Legend 这里配置的是 {{ifName}} 显示出来就是类似 ge0/2 等,也就是 Prometheus 里原始数据的标签名。
如果我想根据这个名字来指定一个对应关系来显示,比如领导不知道 ge0/2 是什么意思(开玩笑的,没找到合适的例子),可以将 ge0/2 转换为:第一排第二个网口,可以这么配置:
根据 value 值进行变色
如果只想针对某一列修改颜色
value mappings 添加对应的说明和颜色
添加一个 override
文章作者: 张理坤
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 杂烩饭!
相关推荐
2026-07-14
Grafana 监控面板配置
安装 grafanaoss:开源版本 enterprise: 商业版本 https://grafana.com/grafana/download?pg=get&plcmt=selfmanaged-box1-cta1&edition=oss 添加数据源以 grafana 10.3.3 为例, 在 connections –> Data sources 中新增: 面板配置可以手动配置,也可以在 grafana 官网下载别人配置好的模板:https://grafana.com/grafana/dashboards/, 复制 ID 或者下载 json 文件到本地 然后在面板上面,点击 + , 选择 import dashboard 使用 json 文件导入或者直接输入面板 id 进行导入。 导入后便能看到基础的图形。 做变量筛选比如我们的监控会区分环境, 比如开发环境 dev,生产环境 prod, 现在需要在 grafana 的面板上做一个筛选框,这里是原始的数据:比如我们需要取 env 的值 在面板的设置 – 变量中, 添加一个变量, 变量名可以自定义, 在此...
2026-07-14
Kubernetes中使用Prometheus对集群节点做监控
正常情况下使用 Prometheus 对机器做监控,比如监控 CPU、内存、磁盘等信息, 都是在机器上安装一个 node exporter, 然后将 metrics 接入到 Prometheus 中。在 k8s 环境下, 我们可以使用 k8s 来管理, 实现自动化监控。 node exporter 是针对主机节点的, 需要在每台 node 节点上安装, 那么 daemonset 控制器是最合理的选择。 网络使用 Host Network 模式, 在主机上直接暴露一个端口。 部署 node exporter使用 yaml 配置 prometheus关于 Prometheus 标签处理, 可以看 这篇文章 这里是利用了 Prometheus 的元数据,将 kubelet 的地址更换成了 node exporter 的地址, 端口换成了 9100 来实现自动化监控的。
2025-04-16
Prometheus常用PromQL记录
prometheus 查询语法叫 PromQL,做个记录: 查询条件Prometheus 存储的是时序数据,而它的时序是由名字和一组标签构成的,其实名字也可以写出标签的形式,例如 http_requests_total 等价于 {name="http_requests_total"}。 一个简单的查询相当于是对各种标签的筛选,例如: 操作符Prometheus 查询语句中,支持常见的各种表达式操作符,例如 算术运算符支持的算术运算符有 +,-,*,/,%,^ , 例如 http_requests_total * 2 表示将 http_requests_total 所有数据 double 一倍。 比较运算符支持的比较运算符有 ==,!=,>,<,>=,<= , 例如 http_requests_total > 100 表示 http_requests_total 结果中大于 100 的数据。 逻辑运算符支持的逻辑运算符有 and,or,unless, 例如 http_requests_total == 5 or http_req...
2025-04-05
使用 Python 自动截图 Grafana 仪表盘,实现可视化监控快照
官方配置文档在这里:https://grafana.com/docs/grafana/latest/setup-grafana/image-rendering/ 使用方式有两种,一种是直接在 grafana 机器上安装插件,另一个是使用外挂渲染器的方式。 部署渲染器 grafana-image-renderer 官方有现成的镜像,也可以不用自己构建镜像: grafana/grafana-image-renderer:3.12.3 也可以用 bitnami 打包的镜像:bitnami/grafana-image-renderer:latest, 我哼哧哼哧搞了半天才想起来官方也有镜像😓 我的 grafana 是运行在 kubernetes 里的,所以选择用外挂渲染器的方法。渲染器核心用的是 Puppeteer,根据官网文档安装依赖包:https://pptr.dev/troubleshooting#chrome-doesnt-launch-on-linux ,另外增加了中文字体包,解决了中文显示框框的问题。最终的渲染器镜像 dockerfile 如下: 部署在 kubern...
2026-07-14
Grafana 接入 LDAP 认证
Grafana 是一个非常好用的展示数据软件,我一直以为可以直接在设置里增加 ldap 配置,没想到啊没想到 必须要修改配置文件才能接入到 LDAP,还是记录一下吧,免得下次部署浪费时间。 我是在 Kubernetes 中部署的,数据存储用的是 MySQL,所以 Grafana 本身可以当作一个无状态服务来看待。也可以不做数据持久化。 先创建 ldap 配置文件这里包括 ldap 数据的映射关系,可以自己尝试修改调整。 创建 deployment 和 service 创建 ingress 验证 LADP 字段配置配置好以后,使用默认管理员账户登录: 默认账号密码:admin/admin 登录以后,在 管理 – 身份验证 – LDAP 里验证字段的映射情况。 LADP 用户权限调整默认情况下,权限是 viewer,只可以查看,不能编辑,系统后台也不能修改权限。如图: 需要到 ldap 来配置权限并同步到 Grafana,我们只希望 ldap 做个轻量的用户数据库,不希望赋予 ldap 太多的功能,这里我们直接修改数据库来修改权限。 先到 user 表查询用户 id 再到...
2025-04-22
使用selenium来实现Grafana的自动截图
selenium 是一个 python 库, 用于操作 chromium 浏览器实现一些自动化的动作, 本文是为了把 grafana 的监控图截图保存, 后续可以将图片做成运维报表之类的. 调试阶段调试阶段可以使用电脑上的 chrome,并关闭 headless 模式,方便看到界面执行的效果.chrome 官网下载即可, chromedriver 下载地址: https://googlechromelabs.github.io/chrome-for-testing/ , chromedriver 放在代码同目录即可. 问题为什么不用 grafana-image-renderer, 这个官方插件 BUG 挺多的, 比如一个图需要很长时间才能加载, 就会出现图还没加载出来, 就完成了截图的情况. 并且截图速度很慢. 简单的开始 正常的话, 可以打开页面了, 然后浏览器会自动关闭. 查找元素从浏览器开发工具查找元素比如说在 grafana 登陆界面,我想自动输入账号密码进行登录,那么可以使用 在这里可以找到名字, 可以根据 NAME 来定位,也可以根据 class 定位. ...
公告
此博客为我记录运维工作总结所用,供网友阅读参考,如有侵权,请通知我,我会核实后进行处理。
欢迎加博主微信,进微信运维技术交流群:






