大家好, 我是 老麦, 一个运维老兵, 现在专注于 Golang,DevOps,云原生基础设施建设。
欢迎 熊猫云原生Go
(全网同名) 或 订阅网站 https://typonotes.com/
。
Grafana: (4) 使用外联表格(Outer Join Table) 展示多个查询结果
建议点击 查看原文 查看最新内容。
原文链接: https://typonotes.com/posts/2023/06/16/grafana-outer-join-table/
在使用 Grafana 的时候, 通常会希望将 多个查询结果 展示到 同一个的表格 上。
这个时候, 就需要使用到 外联表格。
我们现在需要一个表格, 展示 Pod 的的状态, 包括 CPU 的 当前、 Request、 Limit
查询的合并
# 当前用量
container_cpu_usage_seconds_total{pod=~"node-exporter-.*"}
# request
kube_pod_container_resource_requests_cpu_cores{pod=~"node-exporter-.*"}
# limit
kube_pod_container_resource_limits_cpu_cores{pod=~"node-exporter-.*"}
可以看到, 多个查询以 字母 区分 (A,B,C)
在没进行展示优化钱, grafana 会按照查询 独立展示 表格内容。用户需要在下拉菜单中选择对应的查询展示。
外联表格
通过 相同字段 进行 外联。这里选择 pod
-
在查询 Query 标签旁有 Transform 的标签, 用于对表格进行高级处理(变形)。 -
在 Transform 中搜索 Outer Join 外联选型。 -
在 Outer Join 中, 为 Field name 选择 外联字段。我们这里选择 pod, 因为 pod 名是唯一且相同的。
-
在展示界面, 可以看到其他 冲突 字段已经自动命名了 数字后缀 用与区分, 例如 namespace 1
-
对应的, 值字段 字段名根据查询条件对应并区分, Value #A
优化外联表格
优化外联表格展示, 也在 Transform 标签中选择属性。
-
进入到 Transform 标签 -
选择属性 Organize fields -
隐藏所有字段, 显示需要字段。这里为 namespace, pod, Value #A-C
-
将字段名称添加 具有字面意义/阅读性好 的名称。
在调整完成后, 可以看到表格和之前对比,已经非常简洁清爽了。
使用 Overrides 优化字段
虽然我们使用了 Transform 进行表格优化, 同样的也可以使用 Overrides 对字段进行二次优化。
这里就不多说了, 在之前 Grafana: (2) 创建第一个 Table 表格面板[1] 时已经做过详细阐述。
这里主要提一下, 使用 Overrides 的时候, 会多刚才我们在 Transform 下 Organize Table 时的 自定义字段名称。
-
使用 字段名义名称 进行选中, 意味着与查询条件的位置进行 解耦 了。 -
相对的, 自定义名称 也不能在随意更改了。
互相吹捧, 共同进步
加我好友, 备注 技术群 加群一起学习 Golang, Devops, Docker/K8s。
关注、点赞、在看、转发 是对我最大的支持⬇️
参考资料
Grafana: (2) 创建第一个 Table 表格面板: https://typonotes.com/posts/2023/06/06/grafana-create-1st-table-panel/
发表评论