模拟官网编写自定义Grafana Dashboard

前言

我们想编写自定义的Dashboard,类似于官网那样下载的Dashboard,并且能移值到机器主机,如何实现了?

bash 复制代码
## 官网dashboard
https://grafana.com/grafana/dashboards/

编写

先在虚拟机写好Dashboard 然后下载。json文件如下:

bash 复制代码
{
  "annotations": {
    "list": [
      {
        "builtIn": 1,
        "datasource": {
          "type": "grafana",
          "uid": "-- Grafana --"
        },
        "enable": true,
        "hide": true,
        "iconColor": "rgba(0, 211, 255, 1)",
        "name": "Annotations & Alerts",
        "type": "dashboard"
      },
      {
        "datasource": {
          "type": "prometheus",
          "uid": "c043a946-45f8-4729-9d1b-0c24ffa095c3"
        },
        "enable": true,
        "iconColor": "red",
        "name": "New annotation"
      }
    ]
  },
  "editable": true,
  "fiscalYearStartMonth": 0,
  "graphTooltip": 0,
  "id": 35,
  "links": [],
  "liveNow": false,
  "panels": [
    {
      "collapsed": false,
      "gridPos": {
        "h": 1,
        "w": 24,
        "x": 0,
        "y": 0
      },
      "id": 8,
      "panels": [],
      "title": "CPU / Mem / Disk ",
      "type": "row"
    },
    {
      "datasource": {
        "type": "prometheus",
        "uid": "c043a946-45f8-4729-9d1b-0c24ffa095c3"
      },
      "fieldConfig": {
        "defaults": {
          "color": {
            "mode": "palette-classic"
          },
          "custom": {
            "axisCenteredZero": false,
            "axisColorMode": "text",
            "axisLabel": "",
            "axisPlacement": "auto",
            "barAlignment": 0,
            "drawStyle": "line",
            "fillOpacity": 0,
            "gradientMode": "none",
            "hideFrom": {
              "legend": false,
              "tooltip": false,
    

.....

参考官方下载的Dashboard改写

在 annotations 上加入:

bash 复制代码
  "__inputs": [
    {
      "name": "DS_PROMETHEUS",
      "label": "Prometheus",
      "description": "",
      "type": "datasource",
      "pluginId": "prometheus",
      "pluginName": "Prometheus"
    }
  ],
  "__requires": [
    {
      "type": "grafana",
      "id": "grafana",
      "name": "Grafana",
      "version": "6.1.6"
    },
    {
      "type": "panel",
      "id": "graph",
      "name": "Graph",
      "version": ""
    },
    {
      "type": "datasource",
      "id": "prometheus",
      "name": "Prometheus",
      "version": "1.0.0"
    },
    {
      "type": "panel",
      "id": "singlestat",
      "name": "Singlestat",
      "version": ""
    },
    {
      "type": "panel",
      "id": "table",
      "name": "Table",
      "version": ""
    }
  ],

同时把数据源改成如下:

bash 复制代码
"datasource": "${DS_PROMETHEUS}"

同时去掉uid:

bash 复制代码
"uid": "c043a946-45f8-4729-9d1b-0c24ffa095c3"
相关推荐
看浪的路人8 天前
第8讲:记忆系统的监控与运维——Prometheus 指标、Grafana 面板与告警体系
运维·grafana·prometheus
学编程的小程11 天前
服务器日志太分散不好查?我用Promtail+Loki+Grafana把采集、查询和分析串起来了
服务器·python·grafana
花月C15 天前
Agent可观测性篇:Grafana
postgresql·grafana
Kendra91916 天前
运维监控平台(Prometheus + Grafana)部署与维护
运维·grafana·prometheus
蓝胖的四次元口袋1 个月前
Prometheus+Grafana知识梳理(2)
grafana·prometheus
打工仔折腾 AI1 个月前
多台服务器日志分散难查?用Promtail+Loki+Grafana搭建集中检索平台
服务器·人工智能·后端·python·性能优化·django·grafana
蓝胖的四次元口袋1 个月前
Prometheus+Grafana知识梳理(1)
grafana·prometheus
哈__1 个月前
日志散在多台服务器怎么查?用 Promtail + Loki + Grafana 搭一套集中检索平台
运维·服务器·grafana
DylanlZhao1 个月前
我想看看本地 LLM 给我省了多少钱,于是我监控了它
llm·grafana
天天喝旺仔2 个月前
Prometheus + Grafana 监控告警体系搭建实战:从 Exporter 指标采集、PromQL 查询到 Alertmanager 告警落地
容器·kubernetes·grafana·prometheus·时序数据库