cluster

Infrastructure files for Nordgedanken and Midnightthoughts.
git clone git://archive.git.mtrnord.blog/MTRNord/cluster.git
Log | Files | Refs | README

pg_dashboard_configmap.yaml (37267B)


      1 apiVersion: v1
      2 kind: ConfigMap
      3 metadata:
      4   labels:
      5     grafana_dashboard: "1"
      6   name: postgres-dashboard
      7   annotations:
      8     grafana_folder: Postgres
      9 data:
     10   postgres.json: "{\n\"annotations\": {\n    \"list\": [\n    {\n        \"builtIn\": 1,\n        \"datasource\": \"-- Grafana --\",\n        \"enable\": true,\n        \"hide\": true,\n        \"iconColor\":
     11     \"rgba(0, 211, 255, 1)\",\n        \"name\": \"Annotations & Alerts\",\n        \"type\": \"dashboard\"\n    }\n    ]\n},\n\"description\": \"Performance metrics for Postgres\",\n\"editable\": true,\n\"gnetId\":
     12     455,\n\"graphTooltip\": 0,\n\"id\": 1,\n\"iteration\": 1603191461722,\n\"links\": [],\n\"panels\": [\n    {\n    \"aliasColors\": {},\n    \"bars\": false,\n    \"dashLength\": 10,\n    \"dashes\":
     13     false,\n    \"datasource\": \"$datasource\",\n    \"editable\": true,\n    \"error\": false,\n    \"fieldConfig\": {\n        \"defaults\": {\n        \"custom\": {}\n        },\n        \"overrides\":
     14     []\n    },\n    \"fill\": 1,\n    \"fillGradient\": 0,\n    \"grid\": {},\n    \"gridPos\": {\n        \"h\": 7,\n        \"w\": 20,\n        \"x\": 0,\n        \"y\": 0\n    },\n    \"hiddenSeries\":
     15     false,\n    \"id\": 1,\n    \"isNew\": true,\n    \"legend\": {\n        \"alignAsTable\": true,\n        \"avg\": true,\n        \"current\": false,\n        \"max\": true,\n        \"min\": true,\n
     16     \       \"rightSide\": true,\n        \"show\": true,\n        \"total\": false,\n        \"values\": true\n    },\n    \"lines\": true,\n    \"linewidth\": 1,\n    \"links\": [],\n    \"nullPointMode\":
     17     \"connected\",\n    \"options\": {\n        \"alertThreshold\": true\n    },\n    \"percentage\": false,\n    \"pluginVersion\": \"7.2.1\",\n    \"pointradius\": 5,\n    \"points\": false,\n    \"renderer\":
     18     \"flot\",\n    \"seriesOverrides\": [],\n    \"spaceLength\": 10,\n    \"stack\": false,\n    \"steppedLine\": false,\n    \"targets\": [\n        {\n        \"alias\": \"fetched\",\n        \"dsType\":
     19     \"prometheus\",\n        \"expr\": \"sum(irate(pg_stat_database_tup_fetched{datname=~\\\"$db\\\",job=~\\\"$job\\\",instance=~\\\"$instance\\\"}[$__rate_interval]))\",\n        \"format\": \"time_series\",\n
     20     \       \"groupBy\": [\n            {\n            \"params\": [\n                \"$interval\"\n            ],\n            \"type\": \"time\"\n            },\n            {\n            \"params\":
     21     [\n                \"null\"\n            ],\n            \"type\": \"fill\"\n            }\n        ],\n        \"intervalFactor\": 2,\n        \"legendFormat\": \"fetched\",\n        \"measurement\":
     22     \"postgresql\",\n        \"policy\": \"default\",\n        \"refId\": \"A\",\n        \"resultFormat\": \"time_series\",\n        \"select\": [\n            [\n            {\n                \"params\":
     23     [\n                \"tup_fetched\"\n                ],\n                \"type\": \"field\"\n            },\n            {\n                \"params\": [],\n                \"type\": \"mean\"\n            },\n
     24     \           {\n                \"params\": [\n                \"10s\"\n                ],\n                \"type\": \"non_negative_derivative\"\n            }\n            ]\n        ],\n        \"step\":
     25     120,\n        \"tags\": [\n            {\n            \"key\": \"instance\",\n            \"operator\": \"=~\",\n            \"value\": \"/^$instance$/\"\n            }\n        ]\n        },\n        {\n
     26     \       \"alias\": \"fetched\",\n        \"dsType\": \"prometheus\",\n        \"expr\": \"sum(irate(pg_stat_database_tup_returned{datname=~\\\"$db\\\",job=~\\\"$job\\\",instance=~\\\"$instance\\\"}[$__rate_interval]))\",\n
     27     \       \"format\": \"time_series\",\n        \"groupBy\": [\n            {\n            \"params\": [\n                \"$interval\"\n            ],\n            \"type\": \"time\"\n            },\n
     28     \           {\n            \"params\": [\n                \"null\"\n            ],\n            \"type\": \"fill\"\n            }\n        ],\n        \"intervalFactor\": 2,\n        \"legendFormat\":
     29     \"returned\",\n        \"measurement\": \"postgresql\",\n        \"policy\": \"default\",\n        \"refId\": \"B\",\n        \"resultFormat\": \"time_series\",\n        \"select\": [\n            [\n
     30     \           {\n                \"params\": [\n                \"tup_fetched\"\n                ],\n                \"type\": \"field\"\n            },\n            {\n                \"params\": [],\n
     31     \               \"type\": \"mean\"\n            },\n            {\n                \"params\": [\n                \"10s\"\n                ],\n                \"type\": \"non_negative_derivative\"\n
     32     \           }\n            ]\n        ],\n        \"step\": 120,\n        \"tags\": [\n            {\n            \"key\": \"instance\",\n            \"operator\": \"=~\",\n            \"value\": \"/^$instance$/\"\n
     33     \           }\n        ]\n        },\n        {\n        \"alias\": \"fetched\",\n        \"dsType\": \"prometheus\",\n        \"expr\": \"sum(irate(pg_stat_database_tup_inserted{datname=~\\\"$db\\\",job=~\\\"$job\\\",instance=~\\\"$instance\\\"}[$__rate_interval]))\",\n
     34     \       \"format\": \"time_series\",\n        \"groupBy\": [\n            {\n            \"params\": [\n                \"$interval\"\n            ],\n            \"type\": \"time\"\n            },\n
     35     \           {\n            \"params\": [\n                \"null\"\n            ],\n            \"type\": \"fill\"\n            }\n        ],\n        \"intervalFactor\": 2,\n        \"legendFormat\":
     36     \"inserted\",\n        \"measurement\": \"postgresql\",\n        \"policy\": \"default\",\n        \"refId\": \"C\",\n        \"resultFormat\": \"time_series\",\n        \"select\": [\n            [\n
     37     \           {\n                \"params\": [\n                \"tup_fetched\"\n                ],\n                \"type\": \"field\"\n            },\n            {\n                \"params\": [],\n
     38     \               \"type\": \"mean\"\n            },\n            {\n                \"params\": [\n                \"10s\"\n                ],\n                \"type\": \"non_negative_derivative\"\n
     39     \           }\n            ]\n        ],\n        \"step\": 120,\n        \"tags\": [\n            {\n            \"key\": \"instance\",\n            \"operator\": \"=~\",\n            \"value\": \"/^$instance$/\"\n
     40     \           }\n        ]\n        },\n        {\n        \"alias\": \"fetched\",\n        \"dsType\": \"prometheus\",\n        \"expr\": \"sum(irate(pg_stat_database_tup_updated{datname=~\\\"$db\\\",job=~\\\"$job\\\",instance=~\\\"$instance\\\"}[$__rate_interval]))\",\n
     41     \       \"format\": \"time_series\",\n        \"groupBy\": [\n            {\n            \"params\": [\n                \"$interval\"\n            ],\n            \"type\": \"time\"\n            },\n
     42     \           {\n            \"params\": [\n                \"null\"\n            ],\n            \"type\": \"fill\"\n            }\n        ],\n        \"intervalFactor\": 2,\n        \"legendFormat\":
     43     \"updated\",\n        \"measurement\": \"postgresql\",\n        \"policy\": \"default\",\n        \"refId\": \"D\",\n        \"resultFormat\": \"time_series\",\n        \"select\": [\n            [\n
     44     \           {\n                \"params\": [\n                \"tup_fetched\"\n                ],\n                \"type\": \"field\"\n            },\n            {\n                \"params\": [],\n
     45     \               \"type\": \"mean\"\n            },\n            {\n                \"params\": [\n                \"10s\"\n                ],\n                \"type\": \"non_negative_derivative\"\n
     46     \           }\n            ]\n        ],\n        \"step\": 120,\n        \"tags\": [\n            {\n            \"key\": \"instance\",\n            \"operator\": \"=~\",\n            \"value\": \"/^$instance$/\"\n
     47     \           }\n        ]\n        },\n        {\n        \"alias\": \"fetched\",\n        \"dsType\": \"prometheus\",\n        \"expr\": \"sum(irate(pg_stat_database_tup_deleted{datname=~\\\"$db\\\",job=~\\\"$job\\\",instance=~\\\"$instance\\\"}[$__rate_interval]))\",\n
     48     \       \"format\": \"time_series\",\n        \"groupBy\": [\n            {\n            \"params\": [\n                \"$interval\"\n            ],\n            \"type\": \"time\"\n            },\n
     49     \           {\n            \"params\": [\n                \"null\"\n            ],\n            \"type\": \"fill\"\n            }\n        ],\n        \"intervalFactor\": 2,\n        \"legendFormat\":
     50     \"deleted\",\n        \"measurement\": \"postgresql\",\n        \"policy\": \"default\",\n        \"refId\": \"E\",\n        \"resultFormat\": \"time_series\",\n        \"select\": [\n            [\n
     51     \           {\n                \"params\": [\n                \"tup_fetched\"\n                ],\n                \"type\": \"field\"\n            },\n            {\n                \"params\": [],\n
     52     \               \"type\": \"mean\"\n            },\n            {\n                \"params\": [\n                \"10s\"\n                ],\n                \"type\": \"non_negative_derivative\"\n
     53     \           }\n            ]\n        ],\n        \"step\": 120,\n        \"tags\": [\n            {\n            \"key\": \"instance\",\n            \"operator\": \"=~\",\n            \"value\": \"/^$instance$/\"\n
     54     \           }\n        ]\n        }\n    ],\n    \"thresholds\": [],\n    \"timeFrom\": null,\n    \"timeRegions\": [],\n    \"timeShift\": null,\n    \"title\": \"Rows\",\n    \"tooltip\": {\n        \"msResolution\":
     55     true,\n        \"shared\": true,\n        \"sort\": 0,\n        \"value_type\": \"cumulative\"\n    },\n    \"type\": \"graph\",\n    \"xaxis\": {\n        \"buckets\": null,\n        \"mode\": \"time\",\n
     56     \       \"name\": null,\n        \"show\": true,\n        \"values\": []\n    },\n    \"yaxes\": [\n        {\n        \"format\": \"short\",\n        \"label\": null,\n        \"logBase\": 1,\n        \"max\":
     57     null,\n        \"min\": null,\n        \"show\": true\n        },\n        {\n        \"format\": \"short\",\n        \"label\": null,\n        \"logBase\": 1,\n        \"max\": null,\n        \"min\":
     58     null,\n        \"show\": true\n        }\n    ],\n    \"yaxis\": {\n        \"align\": false,\n        \"alignLevel\": null\n    }\n    },\n    {\n    \"cacheTimeout\": null,\n    \"colorBackground\":
     59     false,\n    \"colorValue\": false,\n    \"colors\": [\n        \"rgba(245, 54, 54, 0.9)\",\n        \"rgba(237, 129, 40, 0.89)\",\n        \"rgba(50, 172, 45, 0.97)\"\n    ],\n    \"datasource\": \"$datasource\",\n
     60     \   \"decimals\": 0,\n    \"editable\": true,\n    \"error\": false,\n    \"fieldConfig\": {\n        \"defaults\": {\n        \"custom\": {}\n        },\n        \"overrides\": []\n    },\n    \"format\":
     61     \"none\",\n    \"gauge\": {\n        \"maxValue\": 100,\n        \"minValue\": 0,\n        \"show\": false,\n        \"thresholdLabels\": false,\n        \"thresholdMarkers\": true\n    },\n    \"gridPos\":
     62     {\n        \"h\": 3,\n        \"w\": 4,\n        \"x\": 20,\n        \"y\": 0\n    },\n    \"height\": \"55px\",\n    \"id\": 11,\n    \"interval\": null,\n    \"isNew\": true,\n    \"links\": [],\n
     63     \   \"mappingType\": 1,\n    \"mappingTypes\": [\n        {\n        \"name\": \"value to text\",\n        \"value\": 1\n        },\n        {\n        \"name\": \"range to text\",\n        \"value\":
     64     2\n        }\n    ],\n    \"maxDataPoints\": 100,\n    \"nullPointMode\": \"connected\",\n    \"nullText\": null,\n    \"postfix\": \"\",\n    \"postfixFontSize\": \"50%\",\n    \"prefix\": \"\",\n
     65     \   \"prefixFontSize\": \"50%\",\n    \"rangeMaps\": [\n        {\n        \"from\": \"null\",\n        \"text\": \"N/A\",\n        \"to\": \"null\"\n        }\n    ],\n    \"sparkline\": {\n        \"fillColor\":
     66     \"rgba(31, 118, 189, 0.18)\",\n        \"full\": true,\n        \"lineColor\": \"rgb(31, 120, 193)\",\n        \"show\": true\n    },\n    \"tableColumn\": \"\",\n    \"targets\": [\n        {\n        \"dsType\":
     67     \"prometheus\",\n        \"expr\": \"sum(irate(pg_stat_database_xact_commit{datname=~\\\"$db\\\",job=~\\\"$job\\\",instance=~\\\"$instance\\\"}[$__rate_interval])) + sum(irate(pg_stat_database_xact_rollback{datname=~\\\"$db\\\",job=~\\\"$job\\\",instance=~\\\"$instance\\\"}[$__rate_interval]))\",\n
     68     \       \"format\": \"time_series\",\n        \"groupBy\": [\n            {\n            \"params\": [\n                \"$interval\"\n            ],\n            \"type\": \"time\"\n            },\n
     69     \           {\n            \"params\": [\n                \"null\"\n            ],\n            \"type\": \"fill\"\n            }\n        ],\n        \"intervalFactor\": 2,\n        \"measurement\":
     70     \"postgresql\",\n        \"policy\": \"default\",\n        \"refId\": \"A\",\n        \"resultFormat\": \"time_series\",\n        \"select\": [\n            [\n            {\n                \"params\":
     71     [\n                \"xact_commit\"\n                ],\n                \"type\": \"field\"\n            },\n            {\n                \"params\": [],\n                \"type\": \"mean\"\n            },\n
     72     \           {\n                \"params\": [\n                \"10s\"\n                ],\n                \"type\": \"non_negative_derivative\"\n            }\n            ]\n        ],\n        \"step\":
     73     1800,\n        \"tags\": [\n            {\n            \"key\": \"instance\",\n            \"operator\": \"=~\",\n            \"value\": \"/^$instance$/\"\n            }\n        ]\n        }\n    ],\n
     74     \   \"thresholds\": \"\",\n    \"title\": \"QPS\",\n    \"transparent\": true,\n    \"type\": \"singlestat\",\n    \"valueFontSize\": \"80%\",\n    \"valueMaps\": [\n        {\n        \"op\": \"=\",\n
     75     \       \"text\": \"N/A\",\n        \"value\": \"null\"\n        }\n    ],\n    \"valueName\": \"avg\"\n    },\n    {\n    \"aliasColors\": {},\n    \"bars\": false,\n    \"dashLength\": 10,\n    \"dashes\":
     76     false,\n    \"datasource\": \"$datasource\",\n    \"decimals\": 1,\n    \"editable\": true,\n    \"error\": false,\n    \"fieldConfig\": {\n        \"defaults\": {\n        \"custom\": {}\n        },\n
     77     \       \"overrides\": []\n    },\n    \"fill\": 1,\n    \"fillGradient\": 0,\n    \"grid\": {},\n    \"gridPos\": {\n        \"h\": 7,\n        \"w\": 12,\n        \"x\": 0,\n        \"y\": 7\n    },\n
     78     \   \"hiddenSeries\": false,\n    \"id\": 2,\n    \"isNew\": true,\n    \"legend\": {\n        \"alignAsTable\": true,\n        \"avg\": true,\n        \"current\": false,\n        \"hideZero\": true,\n
     79     \       \"max\": true,\n        \"min\": true,\n        \"rightSide\": false,\n        \"show\": true,\n        \"total\": false,\n        \"values\": true\n    },\n    \"lines\": true,\n    \"linewidth\":
     80     1,\n    \"links\": [],\n    \"nullPointMode\": \"connected\",\n    \"options\": {\n        \"alertThreshold\": true\n    },\n    \"percentage\": false,\n    \"pluginVersion\": \"7.2.1\",\n    \"pointradius\":
     81     5,\n    \"points\": false,\n    \"renderer\": \"flot\",\n    \"seriesOverrides\": [],\n    \"spaceLength\": 10,\n    \"stack\": false,\n    \"steppedLine\": false,\n    \"targets\": [\n        {\n        \"alias\":
     82     \"Buffers Allocated\",\n        \"dsType\": \"prometheus\",\n        \"expr\": \"irate(pg_stat_bgwriter_buffers_alloc{job=~\\\"$job\\\",instance=~\\\"$instance\\\"}[$__rate_interval])\",\n        \"format\":
     83     \"time_series\",\n        \"groupBy\": [\n            {\n            \"params\": [\n                \"$interval\"\n            ],\n            \"type\": \"time\"\n            },\n            {\n            \"params\":
     84     [\n                \"null\"\n            ],\n            \"type\": \"fill\"\n            }\n        ],\n        \"intervalFactor\": 2,\n        \"legendFormat\": \"buffers_alloc\",\n        \"measurement\":
     85     \"postgresql\",\n        \"policy\": \"default\",\n        \"refId\": \"A\",\n        \"resultFormat\": \"time_series\",\n        \"select\": [\n            [\n            {\n                \"params\":
     86     [\n                \"buffers_alloc\"\n                ],\n                \"type\": \"field\"\n            },\n            {\n                \"params\": [],\n                \"type\": \"mean\"\n            },\n
     87     \           {\n                \"params\": [],\n                \"type\": \"difference\"\n            }\n            ]\n        ],\n        \"step\": 240,\n        \"tags\": [\n            {\n            \"key\":
     88     \"instance\",\n            \"operator\": \"=~\",\n            \"value\": \"/^$instance$/\"\n            }\n        ]\n        },\n        {\n        \"alias\": \"Buffers Allocated\",\n        \"dsType\":
     89     \"prometheus\",\n        \"expr\": \"irate(pg_stat_bgwriter_buffers_backend_fsync{job=~\\\"$job\\\",instance=~\\\"$instance\\\"}[$__rate_interval])\",\n        \"format\": \"time_series\",\n        \"groupBy\":
     90     [\n            {\n            \"params\": [\n                \"$interval\"\n            ],\n            \"type\": \"time\"\n            },\n            {\n            \"params\": [\n                \"null\"\n
     91     \           ],\n            \"type\": \"fill\"\n            }\n        ],\n        \"intervalFactor\": 2,\n        \"legendFormat\": \"buffers_backend_fsync\",\n        \"measurement\": \"postgresql\",\n
     92     \       \"policy\": \"default\",\n        \"refId\": \"B\",\n        \"resultFormat\": \"time_series\",\n        \"select\": [\n            [\n            {\n                \"params\": [\n                \"buffers_alloc\"\n
     93     \               ],\n                \"type\": \"field\"\n            },\n            {\n                \"params\": [],\n                \"type\": \"mean\"\n            },\n            {\n                \"params\":
     94     [],\n                \"type\": \"difference\"\n            }\n            ]\n        ],\n        \"step\": 240,\n        \"tags\": [\n            {\n            \"key\": \"instance\",\n            \"operator\":
     95     \"=~\",\n            \"value\": \"/^$instance$/\"\n            }\n        ]\n        },\n        {\n        \"alias\": \"Buffers Allocated\",\n        \"dsType\": \"prometheus\",\n        \"expr\":
     96     \"irate(pg_stat_bgwriter_buffers_backend{job=~\\\"$job\\\",instance=~\\\"$instance\\\"}[$__rate_interval])\",\n        \"format\": \"time_series\",\n        \"groupBy\": [\n            {\n            \"params\":
     97     [\n                \"$interval\"\n            ],\n            \"type\": \"time\"\n            },\n            {\n            \"params\": [\n                \"null\"\n            ],\n            \"type\":
     98     \"fill\"\n            }\n        ],\n        \"intervalFactor\": 2,\n        \"legendFormat\": \"buffers_backend\",\n        \"measurement\": \"postgresql\",\n        \"policy\": \"default\",\n        \"refId\":
     99     \"C\",\n        \"resultFormat\": \"time_series\",\n        \"select\": [\n            [\n            {\n                \"params\": [\n                \"buffers_alloc\"\n                ],\n                \"type\":
    100     \"field\"\n            },\n            {\n                \"params\": [],\n                \"type\": \"mean\"\n            },\n            {\n                \"params\": [],\n                \"type\":
    101     \"difference\"\n            }\n            ]\n        ],\n        \"step\": 240,\n        \"tags\": [\n            {\n            \"key\": \"instance\",\n            \"operator\": \"=~\",\n            \"value\":
    102     \"/^$instance$/\"\n            }\n        ]\n        },\n        {\n        \"alias\": \"Buffers Allocated\",\n        \"dsType\": \"prometheus\",\n        \"expr\": \"irate(pg_stat_bgwriter_buffers_clean{job=~\\\"$job\\\",instance=~\\\"$instance\\\"}[$__rate_interval])\",\n
    103     \       \"format\": \"time_series\",\n        \"groupBy\": [\n            {\n            \"params\": [\n                \"$interval\"\n            ],\n            \"type\": \"time\"\n            },\n
    104     \           {\n            \"params\": [\n                \"null\"\n            ],\n            \"type\": \"fill\"\n            }\n        ],\n        \"intervalFactor\": 2,\n        \"legendFormat\":
    105     \"buffers_clean\",\n        \"measurement\": \"postgresql\",\n        \"policy\": \"default\",\n        \"refId\": \"D\",\n        \"resultFormat\": \"time_series\",\n        \"select\": [\n            [\n
    106     \           {\n                \"params\": [\n                \"buffers_alloc\"\n                ],\n                \"type\": \"field\"\n            },\n            {\n                \"params\": [],\n
    107     \               \"type\": \"mean\"\n            },\n            {\n                \"params\": [],\n                \"type\": \"difference\"\n            }\n            ]\n        ],\n        \"step\":
    108     240,\n        \"tags\": [\n            {\n            \"key\": \"instance\",\n            \"operator\": \"=~\",\n            \"value\": \"/^$instance$/\"\n            }\n        ]\n        },\n        {\n
    109     \       \"alias\": \"Buffers Allocated\",\n        \"dsType\": \"prometheus\",\n        \"expr\": \"irate(pg_stat_bgwriter_buffers_checkpoint{job=~\\\"$job\\\",instance=~\\\"$instance\\\"}[$__rate_interval])\",\n
    110     \       \"format\": \"time_series\",\n        \"groupBy\": [\n            {\n            \"params\": [\n                \"$interval\"\n            ],\n            \"type\": \"time\"\n            },\n
    111     \           {\n            \"params\": [\n                \"null\"\n            ],\n            \"type\": \"fill\"\n            }\n        ],\n        \"intervalFactor\": 2,\n        \"legendFormat\":
    112     \"buffers_checkpoint\",\n        \"measurement\": \"postgresql\",\n        \"policy\": \"default\",\n        \"refId\": \"E\",\n        \"resultFormat\": \"time_series\",\n        \"select\": [\n            [\n
    113     \           {\n                \"params\": [\n                \"buffers_alloc\"\n                ],\n                \"type\": \"field\"\n            },\n            {\n                \"params\": [],\n
    114     \               \"type\": \"mean\"\n            },\n            {\n                \"params\": [],\n                \"type\": \"difference\"\n            }\n            ]\n        ],\n        \"step\":
    115     240,\n        \"tags\": [\n            {\n            \"key\": \"instance\",\n            \"operator\": \"=~\",\n            \"value\": \"/^$instance$/\"\n            }\n        ]\n        }\n    ],\n
    116     \   \"thresholds\": [],\n    \"timeFrom\": null,\n    \"timeRegions\": [],\n    \"timeShift\": null,\n    \"title\": \"Buffers\",\n    \"tooltip\": {\n        \"msResolution\": false,\n        \"shared\":
    117     true,\n        \"sort\": 0,\n        \"value_type\": \"cumulative\"\n    },\n    \"type\": \"graph\",\n    \"xaxis\": {\n        \"buckets\": null,\n        \"mode\": \"time\",\n        \"name\": null,\n
    118     \       \"show\": true,\n        \"values\": []\n    },\n    \"yaxes\": [\n        {\n        \"format\": \"short\",\n        \"label\": null,\n        \"logBase\": 1,\n        \"max\": null,\n        \"min\":
    119     0,\n        \"show\": true\n        },\n        {\n        \"format\": \"short\",\n        \"label\": null,\n        \"logBase\": 1,\n        \"max\": null,\n        \"min\": null,\n        \"show\":
    120     true\n        }\n    ],\n    \"yaxis\": {\n        \"align\": false,\n        \"alignLevel\": null\n    }\n    },\n    {\n    \"aliasColors\": {},\n    \"bars\": false,\n    \"dashLength\": 10,\n    \"dashes\":
    121     false,\n    \"datasource\": \"$datasource\",\n    \"editable\": true,\n    \"error\": false,\n    \"fieldConfig\": {\n        \"defaults\": {\n        \"custom\": {}\n        },\n        \"overrides\":
    122     []\n    },\n    \"fill\": 1,\n    \"fillGradient\": 0,\n    \"grid\": {},\n    \"gridPos\": {\n        \"h\": 7,\n        \"w\": 12,\n        \"x\": 12,\n        \"y\": 7\n    },\n    \"hiddenSeries\":
    123     false,\n    \"id\": 3,\n    \"isNew\": true,\n    \"legend\": {\n        \"avg\": false,\n        \"current\": false,\n        \"max\": false,\n        \"min\": false,\n        \"show\": true,\n        \"total\":
    124     false,\n        \"values\": false\n    },\n    \"lines\": true,\n    \"linewidth\": 2,\n    \"links\": [],\n    \"nullPointMode\": \"connected\",\n    \"options\": {\n        \"alertThreshold\": true\n
    125     \   },\n    \"percentage\": false,\n    \"pluginVersion\": \"7.2.1\",\n    \"pointradius\": 5,\n    \"points\": false,\n    \"renderer\": \"flot\",\n    \"seriesOverrides\": [],\n    \"spaceLength\":
    126     10,\n    \"stack\": false,\n    \"steppedLine\": false,\n    \"targets\": [\n        {\n        \"alias\": \"conflicts\",\n        \"dsType\": \"prometheus\",\n        \"expr\": \"sum(rate(pg_stat_database_deadlocks{datname=~\\\"$db\\\",job=~\\\"$job\\\",instance=~\\\"$instance\\\"}[$__rate_interval]))\",\n
    127     \       \"format\": \"time_series\",\n        \"groupBy\": [\n            {\n            \"params\": [\n                \"$interval\"\n            ],\n            \"type\": \"time\"\n            },\n
    128     \           {\n            \"params\": [\n                \"null\"\n            ],\n            \"type\": \"fill\"\n            }\n        ],\n        \"intervalFactor\": 2,\n        \"legendFormat\":
    129     \"deadlocks\",\n        \"measurement\": \"postgresql\",\n        \"policy\": \"default\",\n        \"refId\": \"A\",\n        \"resultFormat\": \"time_series\",\n        \"select\": [\n            [\n
    130     \           {\n                \"params\": [\n                \"conflicts\"\n                ],\n                \"type\": \"field\"\n            },\n            {\n                \"params\": [],\n
    131     \               \"type\": \"mean\"\n            },\n            {\n                \"params\": [],\n                \"type\": \"difference\"\n            }\n            ]\n        ],\n        \"step\":
    132     240,\n        \"tags\": [\n            {\n            \"key\": \"instance\",\n            \"operator\": \"=~\",\n            \"value\": \"/^$instance$/\"\n            }\n        ]\n        },\n        {\n
    133     \       \"alias\": \"deadlocks\",\n        \"dsType\": \"prometheus\",\n        \"expr\": \"sum(rate(pg_stat_database_conflicts{datname=~\\\"$db\\\",job=~\\\"$job\\\",instance=~\\\"$instance\\\"}[$__rate_interval]))\",\n
    134     \       \"format\": \"time_series\",\n        \"groupBy\": [\n            {\n            \"params\": [\n                \"$interval\"\n            ],\n            \"type\": \"time\"\n            },\n
    135     \           {\n            \"params\": [\n                \"null\"\n            ],\n            \"type\": \"fill\"\n            }\n        ],\n        \"intervalFactor\": 2,\n        \"legendFormat\":
    136     \"conflicts\",\n        \"measurement\": \"postgresql\",\n        \"policy\": \"default\",\n        \"refId\": \"B\",\n        \"resultFormat\": \"time_series\",\n        \"select\": [\n            [\n
    137     \           {\n                \"params\": [\n                \"deadlocks\"\n                ],\n                \"type\": \"field\"\n            },\n            {\n                \"params\": [],\n
    138     \               \"type\": \"mean\"\n            },\n            {\n                \"params\": [],\n                \"type\": \"difference\"\n            }\n            ]\n        ],\n        \"step\":
    139     240,\n        \"tags\": [\n            {\n            \"key\": \"instance\",\n            \"operator\": \"=~\",\n            \"value\": \"/^$instance$/\"\n            }\n        ]\n        }\n    ],\n
    140     \   \"thresholds\": [],\n    \"timeFrom\": null,\n    \"timeRegions\": [],\n    \"timeShift\": null,\n    \"title\": \"Conflicts/Deadlocks\",\n    \"tooltip\": {\n        \"msResolution\": false,\n
    141     \       \"shared\": true,\n        \"sort\": 0,\n        \"value_type\": \"cumulative\"\n    },\n    \"type\": \"graph\",\n    \"xaxis\": {\n        \"buckets\": null,\n        \"mode\": \"time\",\n
    142     \       \"name\": null,\n        \"show\": true,\n        \"values\": []\n    },\n    \"yaxes\": [\n        {\n        \"format\": \"short\",\n        \"label\": null,\n        \"logBase\": 1,\n        \"max\":
    143     null,\n        \"min\": 0,\n        \"show\": true\n        },\n        {\n        \"format\": \"short\",\n        \"label\": null,\n        \"logBase\": 1,\n        \"max\": null,\n        \"min\":
    144     null,\n        \"show\": true\n        }\n    ],\n    \"yaxis\": {\n        \"align\": false,\n        \"alignLevel\": null\n    }\n    },\n    {\n    \"aliasColors\": {},\n    \"bars\": false,\n    \"dashLength\":
    145     10,\n    \"dashes\": false,\n    \"datasource\": \"$datasource\",\n    \"editable\": true,\n    \"error\": false,\n    \"fieldConfig\": {\n        \"defaults\": {\n        \"custom\": {}\n        },\n
    146     \       \"overrides\": []\n    },\n    \"fill\": 1,\n    \"fillGradient\": 0,\n    \"grid\": {},\n    \"gridPos\": {\n        \"h\": 7,\n        \"w\": 12,\n        \"x\": 0,\n        \"y\": 14\n    },\n
    147     \   \"hiddenSeries\": false,\n    \"id\": 12,\n    \"isNew\": true,\n    \"legend\": {\n        \"avg\": false,\n        \"current\": false,\n        \"max\": false,\n        \"min\": false,\n        \"show\":
    148     true,\n        \"total\": false,\n        \"values\": false\n    },\n    \"lines\": true,\n    \"linewidth\": 2,\n    \"links\": [],\n    \"nullPointMode\": \"connected\",\n    \"options\": {\n        \"alertThreshold\":
    149     true\n    },\n    \"percentage\": true,\n    \"pluginVersion\": \"7.2.1\",\n    \"pointradius\": 1,\n    \"points\": false,\n    \"renderer\": \"flot\",\n    \"seriesOverrides\": [],\n    \"spaceLength\":
    150     10,\n    \"stack\": false,\n    \"steppedLine\": false,\n    \"targets\": [\n        {\n        \"expr\": \"sum by (datname) (rate(pg_stat_database_blks_hit{datname=~\\\"$db\\\",job=~\\\"$job\\\",instance=~\\\"$instance\\\"}[$__rate_interval]))
    151     / (sum by (datname)(rate(pg_stat_database_blks_hit{datname=~\\\"$db\\\",job=~\\\"$job\\\",instance=~\\\"$instance\\\"}[$__rate_interval])) + sum by (datname)(rate(pg_stat_database_blks_read{datname=~\\\"$db\\\",job=~\\\"$job\\\",instance=~\\\"$instance\\\"}[$__rate_interval])))\",\n
    152     \       \"format\": \"time_series\",\n        \"intervalFactor\": 2,\n        \"legendFormat\": \"{{datname}} - cache hit rate\",\n        \"refId\": \"A\",\n        \"step\": 240\n        }\n    ],\n
    153     \   \"thresholds\": [],\n    \"timeFrom\": null,\n    \"timeRegions\": [],\n    \"timeShift\": null,\n    \"title\": \"Cache hit ratio\",\n    \"tooltip\": {\n        \"msResolution\": false,\n        \"shared\":
    154     true,\n        \"sort\": 0,\n        \"value_type\": \"cumulative\"\n    },\n    \"type\": \"graph\",\n    \"xaxis\": {\n        \"buckets\": null,\n        \"mode\": \"time\",\n        \"name\": null,\n
    155     \       \"show\": true,\n        \"values\": []\n    },\n    \"yaxes\": [\n        {\n        \"format\": \"percentunit\",\n        \"label\": null,\n        \"logBase\": 1,\n        \"max\": null,\n
    156     \       \"min\": null,\n        \"show\": true\n        },\n        {\n        \"format\": \"short\",\n        \"label\": null,\n        \"logBase\": 1,\n        \"max\": null,\n        \"min\": null,\n
    157     \       \"show\": true\n        }\n    ],\n    \"yaxis\": {\n        \"align\": false,\n        \"alignLevel\": null\n    }\n    },\n    {\n    \"aliasColors\": {},\n    \"bars\": false,\n    \"dashLength\":
    158     10,\n    \"dashes\": false,\n    \"datasource\": \"$datasource\",\n    \"editable\": true,\n    \"error\": false,\n    \"fieldConfig\": {\n        \"defaults\": {\n        \"custom\": {}\n        },\n
    159     \       \"overrides\": []\n    },\n    \"fill\": 1,\n    \"fillGradient\": 0,\n    \"grid\": {},\n    \"gridPos\": {\n        \"h\": 7,\n        \"w\": 12,\n        \"x\": 12,\n        \"y\": 14\n    },\n
    160     \   \"hiddenSeries\": false,\n    \"id\": 13,\n    \"isNew\": true,\n    \"legend\": {\n        \"avg\": false,\n        \"current\": false,\n        \"max\": false,\n        \"min\": false,\n        \"show\":
    161     true,\n        \"total\": false,\n        \"values\": false\n    },\n    \"lines\": true,\n    \"linewidth\": 2,\n    \"links\": [],\n    \"nullPointMode\": \"connected\",\n    \"options\": {\n        \"alertThreshold\":
    162     true\n    },\n    \"percentage\": false,\n    \"pluginVersion\": \"7.2.1\",\n    \"pointradius\": 5,\n    \"points\": false,\n    \"renderer\": \"flot\",\n    \"seriesOverrides\": [],\n    \"spaceLength\":
    163     10,\n    \"stack\": false,\n    \"steppedLine\": false,\n    \"targets\": [\n        {\n        \"expr\": \"pg_stat_database_numbackends{datname=~\\\"$db\\\",job=~\\\"$job\\\",instance=~\\\"$instance\\\"}\",\n
    164     \       \"format\": \"time_series\",\n        \"intervalFactor\": 2,\n        \"legendFormat\": \"{{datname}} - {{__name__}}\",\n        \"refId\": \"A\",\n        \"step\": 240\n        }\n    ],\n
    165     \   \"thresholds\": [],\n    \"timeFrom\": null,\n    \"timeRegions\": [],\n    \"timeShift\": null,\n    \"title\": \"Number of active connections\",\n    \"tooltip\": {\n        \"msResolution\":
    166     false,\n        \"shared\": true,\n        \"sort\": 0,\n        \"value_type\": \"cumulative\"\n    },\n    \"type\": \"graph\",\n    \"xaxis\": {\n        \"buckets\": null,\n        \"mode\": \"time\",\n
    167     \       \"name\": null,\n        \"show\": true,\n        \"values\": []\n    },\n    \"yaxes\": [\n        {\n        \"format\": \"short\",\n        \"label\": null,\n        \"logBase\": 1,\n        \"max\":
    168     null,\n        \"min\": null,\n        \"show\": true\n        },\n        {\n        \"format\": \"short\",\n        \"label\": null,\n        \"logBase\": 1,\n        \"max\": null,\n        \"min\":
    169     null,\n        \"show\": true\n        }\n    ],\n    \"yaxis\": {\n        \"align\": false,\n        \"alignLevel\": null\n    }\n    }\n],\n\"refresh\": false,\n\"schemaVersion\": 26,\n\"style\":
    170     \"dark\",\n\"tags\": [\n    \"postgres\"\n],\n\"templating\": {\n    \"list\": [\n    {\n        \"hide\": 0,\n        \"includeAll\": false,\n        \"label\": \"Data Source\",\n        \"multi\":
    171     false,\n        \"name\": \"datasource\",\n        \"options\": [],\n        \"query\": \"prometheus\",\n        \"refresh\": 1,\n        \"regex\": \"\",\n        \"skipUrlSync\": false,\n        \"type\":
    172     \"datasource\"\n    },      \n    {\n        \"allValue\": \".+\",\n        \"datasource\": \"$datasource\",\n        \"definition\": \"label_values(pg_up, job)\",\n        \"hide\": 0,\n        \"includeAll\":
    173     true,\n        \"label\": \"job\",\n        \"multi\": true,\n        \"name\": \"job\",\n        \"options\": [],\n        \"query\": \"label_values(pg_up, job)\",\n        \"refresh\": 0,\n        \"regex\":
    174     \"\",\n        \"skipUrlSync\": false,\n        \"sort\": 0,\n        \"tagValuesQuery\": \"\",\n        \"tags\": [],\n        \"tagsQuery\": \"\",\n        \"type\": \"query\",\n        \"useTags\":
    175     false\n    },\n    {\n        \"allValue\": \".+\",\n        \"datasource\": \"$datasource\",\n        \"definition\": \"\",\n        \"hide\": 0,\n        \"includeAll\": true,\n        \"label\":
    176     \"instance\",\n        \"multi\": true,\n        \"name\": \"instance\",\n        \"options\": [],\n        \"query\": \"label_values(up{job=~\\\"$job\\\"},instance)\",\n        \"refresh\": 1,\n        \"regex\":
    177     \"\",\n        \"skipUrlSync\": false,\n        \"sort\": 0,\n        \"tagValuesQuery\": \"\",\n        \"tags\": [],\n        \"tagsQuery\": \"\",\n        \"type\": \"query\",\n        \"useTags\":
    178     false\n    },\n    {\n        \"allValue\": \".+\",\n        \"datasource\": \"$datasource\",\n        \"definition\": \"label_values(pg_stat_database_tup_fetched{instance=~\\\"$instance\\\",datname!~\\\"template.*|postgres\\\"},datname)\",\n
    179     \       \"hide\": 0,\n        \"includeAll\": true,\n        \"label\": \"db\",\n        \"multi\": false,\n        \"name\": \"db\",\n        \"options\": [],\n        \"query\": \"label_values(pg_stat_database_tup_fetched{instance=~\\\"$instance\\\",datname!~\\\"template.*|postgres\\\"},datname)\",\n
    180     \       \"refresh\": 1,\n        \"regex\": \"\",\n        \"skipUrlSync\": false,\n        \"sort\": 0,\n        \"tagValuesQuery\": \"\",\n        \"tags\": [],\n        \"tagsQuery\": \"\",\n        \"type\":
    181     \"query\",\n        \"useTags\": false\n    }\n    ]\n},\n\"time\": {\n    \"from\": \"now-1h\",\n    \"to\": \"now\"\n},\n\"timepicker\": {\n    \"refresh_intervals\": [\n    \"5s\",\n    \"10s\",\n
    182     \   \"30s\",\n    \"1m\",\n    \"5m\",\n    \"15m\",\n    \"30m\",\n    \"1h\",\n    \"2h\",\n    \"1d\"\n    ],\n    \"time_options\": [\n    \"5m\",\n    \"15m\",\n    \"1h\",\n    \"6h\",\n    \"12h\",\n
    183     \   \"24h\",\n    \"2d\",\n    \"7d\",\n    \"30d\"\n    ]\n},\n\"timezone\": \"browser\",\n\"title\": \"Postgres Overview\",\n\"uid\": \"wGgaPlciz\",\n\"version\": 5\n}"