|
25 | 25 | "bars": false,
|
26 | 26 | "dashLength": 10,
|
27 | 27 | "dashes": false,
|
28 |
| - "datasource": "Postgres Overview", |
| 28 | + "datasource": "$datasource", |
29 | 29 | "editable": true,
|
30 | 30 | "error": false,
|
31 | 31 | "fieldConfig": {
|
|
77 | 77 | {
|
78 | 78 | "alias": "fetched",
|
79 | 79 | "dsType": "prometheus",
|
80 |
| - "expr": "sum(irate(pg_stat_database_tup_fetched{datname=~\"$db\",instance=~\"$instance\"}[5m]))", |
| 80 | + "expr": "sum(irate(pg_stat_database_tup_fetched{datname=~\"$db\",job=~\"$job\",instance=~\"$instance\"}[$__rate_interval]))", |
81 | 81 | "format": "time_series",
|
82 | 82 | "groupBy": [
|
83 | 83 | {
|
|
131 | 131 | {
|
132 | 132 | "alias": "fetched",
|
133 | 133 | "dsType": "prometheus",
|
134 |
| - "expr": "sum(irate(pg_stat_database_tup_returned{datname=~\"$db\",instance=~\"$instance\"}[5m]))", |
| 134 | + "expr": "sum(irate(pg_stat_database_tup_returned{datname=~\"$db\",job=~\"$job\",instance=~\"$instance\"}[$__rate_interval]))", |
135 | 135 | "format": "time_series",
|
136 | 136 | "groupBy": [
|
137 | 137 | {
|
|
185 | 185 | {
|
186 | 186 | "alias": "fetched",
|
187 | 187 | "dsType": "prometheus",
|
188 |
| - "expr": "sum(irate(pg_stat_database_tup_inserted{datname=~\"$db\",instance=~\"$instance\"}[5m]))", |
| 188 | + "expr": "sum(irate(pg_stat_database_tup_inserted{datname=~\"$db\",job=~\"$job\",instance=~\"$instance\"}[$__rate_interval]))", |
189 | 189 | "format": "time_series",
|
190 | 190 | "groupBy": [
|
191 | 191 | {
|
|
239 | 239 | {
|
240 | 240 | "alias": "fetched",
|
241 | 241 | "dsType": "prometheus",
|
242 |
| - "expr": "sum(irate(pg_stat_database_tup_updated{datname=~\"$db\",instance=~\"$instance\"}[5m]))", |
| 242 | + "expr": "sum(irate(pg_stat_database_tup_updated{datname=~\"$db\",job=~\"$job\",instance=~\"$instance\"}[$__rate_interval]))", |
243 | 243 | "format": "time_series",
|
244 | 244 | "groupBy": [
|
245 | 245 | {
|
|
293 | 293 | {
|
294 | 294 | "alias": "fetched",
|
295 | 295 | "dsType": "prometheus",
|
296 |
| - "expr": "sum(irate(pg_stat_database_tup_deleted{datname=~\"$db\",instance=~\"$instance\"}[5m]))", |
| 296 | + "expr": "sum(irate(pg_stat_database_tup_deleted{datname=~\"$db\",job=~\"$job\",instance=~\"$instance\"}[$__rate_interval]))", |
297 | 297 | "format": "time_series",
|
298 | 298 | "groupBy": [
|
299 | 299 | {
|
|
396 | 396 | "rgba(237, 129, 40, 0.89)",
|
397 | 397 | "rgba(50, 172, 45, 0.97)"
|
398 | 398 | ],
|
399 |
| - "datasource": "Postgres Overview", |
| 399 | + "datasource": "$datasource", |
400 | 400 | "decimals": 0,
|
401 | 401 | "editable": true,
|
402 | 402 | "error": false,
|
|
460 | 460 | "targets": [
|
461 | 461 | {
|
462 | 462 | "dsType": "prometheus",
|
463 |
| - "expr": "sum(irate(pg_stat_database_xact_commit{datname=~\"$db\",instance=~\"$instance\"}[5m])) + sum(irate(pg_stat_database_xact_rollback{datname=~\"$db\",instance=~\"$instance\"}[5m]))", |
| 463 | + "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]))", |
464 | 464 | "format": "time_series",
|
465 | 465 | "groupBy": [
|
466 | 466 | {
|
|
530 | 530 | "bars": false,
|
531 | 531 | "dashLength": 10,
|
532 | 532 | "dashes": false,
|
533 |
| - "datasource": "Postgres Overview", |
| 533 | + "datasource": "$datasource", |
534 | 534 | "decimals": 1,
|
535 | 535 | "editable": true,
|
536 | 536 | "error": false,
|
|
584 | 584 | {
|
585 | 585 | "alias": "Buffers Allocated",
|
586 | 586 | "dsType": "prometheus",
|
587 |
| - "expr": "irate(pg_stat_bgwriter_buffers_alloc_total{instance='$instance'}[5m])", |
| 587 | + "expr": "irate(pg_stat_bgwriter_buffers_alloc{job=~\"$job\",instance=~\"$instance\"}[$__rate_interval])", |
588 | 588 | "format": "time_series",
|
589 | 589 | "groupBy": [
|
590 | 590 | {
|
|
636 | 636 | {
|
637 | 637 | "alias": "Buffers Allocated",
|
638 | 638 | "dsType": "prometheus",
|
639 |
| - "expr": "irate(pg_stat_bgwriter_buffers_backend_fsync_total{instance='$instance'}[5m])", |
| 639 | + "expr": "irate(pg_stat_bgwriter_buffers_backend_fsync{job=~\"$job\",instance=~\"$instance\"}[$__rate_interval])", |
640 | 640 | "format": "time_series",
|
641 | 641 | "groupBy": [
|
642 | 642 | {
|
|
688 | 688 | {
|
689 | 689 | "alias": "Buffers Allocated",
|
690 | 690 | "dsType": "prometheus",
|
691 |
| - "expr": "irate(pg_stat_bgwriter_buffers_backend_total{instance='$instance'}[5m])", |
| 691 | + "expr": "irate(pg_stat_bgwriter_buffers_backend{job=~\"$job\",instance=~\"$instance\"}[$__rate_interval])", |
692 | 692 | "format": "time_series",
|
693 | 693 | "groupBy": [
|
694 | 694 | {
|
|
740 | 740 | {
|
741 | 741 | "alias": "Buffers Allocated",
|
742 | 742 | "dsType": "prometheus",
|
743 |
| - "expr": "irate(pg_stat_bgwriter_buffers_clean_total{instance='$instance'}[5m])", |
| 743 | + "expr": "irate(pg_stat_bgwriter_buffers_clean{job=~\"$job\",instance=~\"$instance\"}[$__rate_interval])", |
744 | 744 | "format": "time_series",
|
745 | 745 | "groupBy": [
|
746 | 746 | {
|
|
792 | 792 | {
|
793 | 793 | "alias": "Buffers Allocated",
|
794 | 794 | "dsType": "prometheus",
|
795 |
| - "expr": "irate(pg_stat_bgwriter_buffers_checkpoint_total{instance='$instance'}[5m])", |
| 795 | + "expr": "irate(pg_stat_bgwriter_buffers_checkpoint{job=~\"$job\",instance=~\"$instance\"}[$__rate_interval])", |
796 | 796 | "format": "time_series",
|
797 | 797 | "groupBy": [
|
798 | 798 | {
|
|
889 | 889 | "bars": false,
|
890 | 890 | "dashLength": 10,
|
891 | 891 | "dashes": false,
|
892 |
| - "datasource": "Postgres Overview", |
| 892 | + "datasource": "$datasource", |
893 | 893 | "editable": true,
|
894 | 894 | "error": false,
|
895 | 895 | "fieldConfig": {
|
|
939 | 939 | {
|
940 | 940 | "alias": "conflicts",
|
941 | 941 | "dsType": "prometheus",
|
942 |
| - "expr": "sum(rate(pg_stat_database_deadlocks{datname=~\"$db\",instance=~\"$instance\"}[5m]))", |
| 942 | + "expr": "sum(rate(pg_stat_database_deadlocks{datname=~\"$db\",job=~\"$job\",instance=~\"$instance\"}[$__rate_interval]))", |
943 | 943 | "format": "time_series",
|
944 | 944 | "groupBy": [
|
945 | 945 | {
|
|
991 | 991 | {
|
992 | 992 | "alias": "deadlocks",
|
993 | 993 | "dsType": "prometheus",
|
994 |
| - "expr": "sum(rate(pg_stat_database_conflicts{datname=~\"$db\",instance=~\"$instance\"}[5m]))", |
| 994 | + "expr": "sum(rate(pg_stat_database_conflicts{datname=~\"$db\",job=~\"$job\",instance=~\"$instance\"}[$__rate_interval]))", |
995 | 995 | "format": "time_series",
|
996 | 996 | "groupBy": [
|
997 | 997 | {
|
|
1088 | 1088 | "bars": false,
|
1089 | 1089 | "dashLength": 10,
|
1090 | 1090 | "dashes": false,
|
1091 |
| - "datasource": "Postgres Overview", |
| 1091 | + "datasource": "$datasource", |
1092 | 1092 | "editable": true,
|
1093 | 1093 | "error": false,
|
1094 | 1094 | "fieldConfig": {
|
|
1136 | 1136 | "steppedLine": false,
|
1137 | 1137 | "targets": [
|
1138 | 1138 | {
|
1139 |
| - "expr": "sum(pg_stat_database_blks_hit{datname=~\"$db\",instance=~\"$instance\"}) / (sum(pg_stat_database_blks_hit{datname=~\"$db\",instance=~\"$instance\"}) + sum(pg_stat_database_blks_read{datname=~\"$db\",instance=~\"$instance\"}))", |
| 1139 | + "expr": "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_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])))", |
1140 | 1140 | "format": "time_series",
|
1141 | 1141 | "intervalFactor": 2,
|
1142 |
| - "legendFormat": "cache hit rate", |
| 1142 | + "legendFormat": "{{datname}} - cache hit rate", |
1143 | 1143 | "refId": "A",
|
1144 | 1144 | "step": 240
|
1145 | 1145 | }
|
|
1191 | 1191 | "bars": false,
|
1192 | 1192 | "dashLength": 10,
|
1193 | 1193 | "dashes": false,
|
1194 |
| - "datasource": "Postgres Overview", |
| 1194 | + "datasource": "$datasource", |
1195 | 1195 | "editable": true,
|
1196 | 1196 | "error": false,
|
1197 | 1197 | "fieldConfig": {
|
|
1239 | 1239 | "steppedLine": false,
|
1240 | 1240 | "targets": [
|
1241 | 1241 | {
|
1242 |
| - "expr": "pg_stat_database_numbackends{datname=~\"$db\",instance=~\"$instance\"}", |
| 1242 | + "expr": "pg_stat_database_numbackends{datname=~\"$db\",job=~\"$job\",instance=~\"$instance\"}", |
1243 | 1243 | "format": "time_series",
|
1244 | 1244 | "intervalFactor": 2,
|
1245 |
| - "legendFormat": "{{__name__}}", |
| 1245 | + "legendFormat": "{{datname}} - {{__name__}}", |
1246 | 1246 | "refId": "A",
|
1247 | 1247 | "step": 240
|
1248 | 1248 | }
|
|
1299 | 1299 | "templating": {
|
1300 | 1300 | "list": [
|
1301 | 1301 | {
|
1302 |
| - "allValue": ".*", |
1303 |
| - "current": { |
1304 |
| - "selected": false, |
1305 |
| - "text": "All", |
1306 |
| - "value": "$__all" |
1307 |
| - }, |
1308 |
| - "datasource": "Postgres Overview", |
1309 |
| - "definition": "", |
1310 | 1302 | "hide": 0,
|
1311 |
| - "includeAll": true, |
1312 |
| - "label": null, |
| 1303 | + "includeAll": false, |
| 1304 | + "label": "Data Source", |
1313 | 1305 | "multi": false,
|
1314 |
| - "name": "instance", |
| 1306 | + "name": "datasource", |
1315 | 1307 | "options": [],
|
1316 |
| - "query": "label_values(up{job=~\"postgres.*\"},instance)", |
| 1308 | + "query": "prometheus", |
1317 | 1309 | "refresh": 1,
|
1318 | 1310 | "regex": "",
|
1319 | 1311 | "skipUrlSync": false,
|
| 1312 | + "type": "datasource" |
| 1313 | + }, |
| 1314 | + { |
| 1315 | + "allValue": ".+", |
| 1316 | + "datasource": "$datasource", |
| 1317 | + "definition": "label_values(pg_up, job)", |
| 1318 | + "hide": 0, |
| 1319 | + "includeAll": true, |
| 1320 | + "label": "job", |
| 1321 | + "multi": true, |
| 1322 | + "name": "job", |
| 1323 | + "options": [], |
| 1324 | + "query": "label_values(pg_up, job)", |
| 1325 | + "refresh": 0, |
| 1326 | + "regex": "", |
| 1327 | + "skipUrlSync": false, |
1320 | 1328 | "sort": 0,
|
1321 | 1329 | "tagValuesQuery": "",
|
1322 | 1330 | "tags": [],
|
|
1325 | 1333 | "useTags": false
|
1326 | 1334 | },
|
1327 | 1335 | {
|
1328 |
| - "allValue": ".*", |
1329 |
| - "current": { |
1330 |
| - "selected": false, |
1331 |
| - "text": "All", |
1332 |
| - "value": "$__all" |
1333 |
| - }, |
1334 |
| - "datasource": "Postgres Overview", |
1335 |
| - "definition": "label_values(pg_stat_database_tup_fetched{instance=~\"$instance\",datname!~\"template.*|postgres\"},datname)", |
| 1336 | + "allValue": ".+", |
| 1337 | + "datasource": "$datasource", |
| 1338 | + "definition": "", |
1336 | 1339 | "hide": 0,
|
1337 | 1340 | "includeAll": true,
|
1338 |
| - "label": "db", |
1339 |
| - "multi": false, |
1340 |
| - "name": "db", |
| 1341 | + "label": "instance", |
| 1342 | + "multi": true, |
| 1343 | + "name": "instance", |
1341 | 1344 | "options": [],
|
1342 |
| - "query": "label_values(pg_stat_database_tup_fetched{instance=~\"$instance\",datname!~\"template.*|postgres\"},datname)", |
| 1345 | + "query": "label_values(up{job=~\"$job\"},instance)", |
1343 | 1346 | "refresh": 1,
|
1344 | 1347 | "regex": "",
|
1345 | 1348 | "skipUrlSync": false,
|
|
1351 | 1354 | "useTags": false
|
1352 | 1355 | },
|
1353 | 1356 | {
|
1354 |
| - "current": { |
1355 |
| - "selected": false, |
1356 |
| - "text": "Postgres Overview", |
1357 |
| - "value": "Postgres Overview" |
1358 |
| - }, |
| 1357 | + "allValue": ".+", |
| 1358 | + "datasource": "$datasource", |
| 1359 | + "definition": "label_values(pg_stat_database_tup_fetched{instance=~\"$instance\",datname!~\"template.*|postgres\"},datname)", |
1359 | 1360 | "hide": 0,
|
1360 |
| - "includeAll": false, |
1361 |
| - "label": "datasource", |
| 1361 | + "includeAll": true, |
| 1362 | + "label": "db", |
1362 | 1363 | "multi": false,
|
1363 |
| - "name": "datasource", |
| 1364 | + "name": "db", |
1364 | 1365 | "options": [],
|
1365 |
| - "query": "prometheus", |
| 1366 | + "query": "label_values(pg_stat_database_tup_fetched{instance=~\"$instance\",datname!~\"template.*|postgres\"},datname)", |
1366 | 1367 | "refresh": 1,
|
1367 | 1368 | "regex": "",
|
1368 | 1369 | "skipUrlSync": false,
|
1369 |
| - "type": "datasource" |
1370 |
| - }, |
1371 |
| - { |
1372 |
| - "allValue": null, |
1373 |
| - "current": { |
1374 |
| - "selected": true, |
1375 |
| - "text": "postgres", |
1376 |
| - "value": "postgres" |
1377 |
| - }, |
1378 |
| - "datasource": "$datasource", |
1379 |
| - "definition": "label_values(pg_up, job)", |
1380 |
| - "hide": 0, |
1381 |
| - "includeAll": false, |
1382 |
| - "label": "job", |
1383 |
| - "multi": false, |
1384 |
| - "name": "job", |
1385 |
| - "options": [ |
1386 |
| - { |
1387 |
| - "selected": true, |
1388 |
| - "text": "postgres", |
1389 |
| - "value": "postgres" |
1390 |
| - } |
1391 |
| - ], |
1392 |
| - "query": "label_values(pg_up, job)", |
1393 |
| - "refresh": 0, |
1394 |
| - "regex": "", |
1395 |
| - "skipUrlSync": false, |
1396 | 1370 | "sort": 0,
|
1397 | 1371 | "tagValuesQuery": "",
|
1398 | 1372 | "tags": [],
|
|
0 commit comments