unoffical wafrn mirror
wafrn.net
atproto
social-network
activitypub
1{
2 "annotations": {
3 "list": [
4 {
5 "builtIn": 1,
6 "datasource": {
7 "type": "datasource",
8 "uid": "grafana"
9 },
10 "enable": true,
11 "hide": true,
12 "iconColor": "rgba(0, 211, 255, 1)",
13 "name": "Annotations & Alerts",
14 "type": "dashboard"
15 }
16 ]
17 },
18 "editable": true,
19 "fiscalYearStartMonth": 0,
20 "graphTooltip": 0,
21 "links": [],
22 "panels": [
23 {
24 "datasource": {
25 "type": "grafana-postgresql-datasource",
26 "uid": "pgwatch-metrics"
27 },
28 "description": "Last 5min data",
29 "fieldConfig": {
30 "defaults": {
31 "color": {
32 "mode": "thresholds"
33 },
34 "mappings": [
35 {
36 "options": {
37 "0": {
38 "text": "PRIMARY"
39 },
40 "1": {
41 "text": "REPLICA"
42 }
43 },
44 "type": "value"
45 }
46 ],
47 "thresholds": {
48 "mode": "absolute",
49 "steps": [
50 {
51 "color": "green",
52 "value": null
53 },
54 {
55 "color": "red",
56 "value": 80
57 }
58 ]
59 },
60 "unit": "none"
61 },
62 "overrides": []
63 },
64 "gridPos": {
65 "h": 2,
66 "w": 3,
67 "x": 0,
68 "y": 0
69 },
70 "hideTimeOverride": true,
71 "id": 16,
72 "interval": "10m",
73 "maxDataPoints": 100,
74 "options": {
75 "colorMode": "none",
76 "graphMode": "none",
77 "justifyMode": "auto",
78 "orientation": "horizontal",
79 "reduceOptions": {
80 "calcs": [
81 "lastNotNull"
82 ],
83 "fields": "",
84 "values": false
85 },
86 "showPercentChange": false,
87 "textMode": "auto",
88 "wideLayout": true
89 },
90 "pluginVersion": "10.4.1",
91 "targets": [
92 {
93 "alias": "TPS",
94 "datasource": {
95 "type": "grafana-postgresql-datasource",
96 "uid": "pgwatch-metrics"
97 },
98 "format": "time_series",
99 "group": [],
100 "groupBy": [
101 {
102 "params": [
103 "$interval"
104 ],
105 "type": "time"
106 },
107 {
108 "params": [
109 "null"
110 ],
111 "type": "fill"
112 }
113 ],
114 "metricColumn": "none",
115 "orderByTime": "ASC",
116 "policy": "default",
117 "rawQuery": true,
118 "rawSql": "SELECT\n time,\n (data->'in_recovery_int')::int\nFROM\n wal\nWHERE\n $__timeFilter(time)\n AND dbname = '$dbname'\nORDER BY time DESC\nLIMIT 1\n",
119 "refId": "A",
120 "resultFormat": "time_series",
121 "select": [
122 [
123 {
124 "params": [
125 "value"
126 ],
127 "type": "field"
128 },
129 {
130 "params": [],
131 "type": "mean"
132 }
133 ]
134 ],
135 "tags": [],
136 "timeColumn": "time",
137 "where": [
138 {
139 "name": "$__timeFilter",
140 "params": [],
141 "type": "macro"
142 }
143 ]
144 }
145 ],
146 "timeFrom": "5m",
147 "title": "Instance state",
148 "type": "stat"
149 },
150 {
151 "datasource": {
152 "type": "grafana-postgresql-datasource",
153 "uid": "pgwatch-metrics"
154 },
155 "description": "Last 5min data",
156 "fieldConfig": {
157 "defaults": {
158 "color": {
159 "mode": "thresholds"
160 },
161 "mappings": [
162 {
163 "options": {
164 "match": "null",
165 "result": {
166 "text": "N/A"
167 }
168 },
169 "type": "special"
170 }
171 ],
172 "thresholds": {
173 "mode": "absolute",
174 "steps": [
175 {
176 "color": "green",
177 "value": null
178 },
179 {
180 "color": "red",
181 "value": 80
182 }
183 ]
184 },
185 "unit": "dtdurations"
186 },
187 "overrides": []
188 },
189 "gridPos": {
190 "h": 2,
191 "w": 3,
192 "x": 3,
193 "y": 0
194 },
195 "hideTimeOverride": true,
196 "id": 15,
197 "interval": "",
198 "maxDataPoints": 100,
199 "options": {
200 "colorMode": "none",
201 "graphMode": "none",
202 "justifyMode": "auto",
203 "orientation": "horizontal",
204 "reduceOptions": {
205 "calcs": [
206 "lastNotNull"
207 ],
208 "fields": "",
209 "values": false
210 },
211 "showPercentChange": false,
212 "textMode": "auto",
213 "wideLayout": true
214 },
215 "pluginVersion": "10.4.1",
216 "targets": [
217 {
218 "alias": "TPS",
219 "datasource": {
220 "type": "grafana-postgresql-datasource",
221 "uid": "pgwatch-metrics"
222 },
223 "format": "time_series",
224 "group": [],
225 "groupBy": [
226 {
227 "params": [
228 "$interval"
229 ],
230 "type": "time"
231 },
232 {
233 "params": [
234 "null"
235 ],
236 "type": "fill"
237 }
238 ],
239 "metricColumn": "none",
240 "orderByTime": "ASC",
241 "policy": "default",
242 "rawQuery": true,
243 "rawSql": "SELECT\n time,\n (data->'postmaster_uptime_s')::int\nFROM\n wal\nWHERE\n $__timeFilter(time)\n AND dbname = '$dbname'\nORDER BY time DESC\nLIMIT 1\n",
244 "refId": "A",
245 "resultFormat": "time_series",
246 "select": [
247 [
248 {
249 "params": [
250 "value"
251 ],
252 "type": "field"
253 },
254 {
255 "params": [],
256 "type": "mean"
257 }
258 ]
259 ],
260 "tags": [],
261 "timeColumn": "time",
262 "where": [
263 {
264 "name": "$__timeFilter",
265 "params": [],
266 "type": "macro"
267 }
268 ]
269 }
270 ],
271 "timeFrom": "5m",
272 "title": "Instance uptime",
273 "type": "stat"
274 },
275 {
276 "datasource": {
277 "type": "grafana-postgresql-datasource",
278 "uid": "pgwatch-metrics"
279 },
280 "description": "Current Transaction Per Second (10min avg.) + 6h history",
281 "fieldConfig": {
282 "defaults": {
283 "color": {
284 "fixedColor": "rgb(31, 120, 193)",
285 "mode": "fixed"
286 },
287 "mappings": [
288 {
289 "options": {
290 "match": "null",
291 "result": {
292 "text": "N/A"
293 }
294 },
295 "type": "special"
296 }
297 ],
298 "thresholds": {
299 "mode": "absolute",
300 "steps": [
301 {
302 "color": "green",
303 "value": null
304 },
305 {
306 "color": "red",
307 "value": 80
308 }
309 ]
310 },
311 "unit": "none"
312 },
313 "overrides": []
314 },
315 "gridPos": {
316 "h": 2,
317 "w": 3,
318 "x": 6,
319 "y": 0
320 },
321 "hideTimeOverride": true,
322 "id": 1,
323 "interval": "10m",
324 "maxDataPoints": 100,
325 "options": {
326 "colorMode": "none",
327 "graphMode": "area",
328 "justifyMode": "auto",
329 "orientation": "horizontal",
330 "reduceOptions": {
331 "calcs": [
332 "lastNotNull"
333 ],
334 "fields": "",
335 "values": false
336 },
337 "showPercentChange": false,
338 "textMode": "auto",
339 "wideLayout": true
340 },
341 "pluginVersion": "10.4.1",
342 "targets": [
343 {
344 "alias": "TPS",
345 "datasource": {
346 "type": "grafana-postgresql-datasource",
347 "uid": "pgwatch-metrics"
348 },
349 "format": "time_series",
350 "group": [],
351 "groupBy": [
352 {
353 "params": [
354 "$interval"
355 ],
356 "type": "time"
357 },
358 {
359 "params": [
360 "null"
361 ],
362 "type": "fill"
363 }
364 ],
365 "metricColumn": "none",
366 "orderByTime": "ASC",
367 "policy": "default",
368 "rawQuery": true,
369 "rawSql": "select\n $__timeGroup(time, $__interval),\n avg(((c - c_lag) + (r - r_lag)) / extract(epoch from time - time_lag)) as tps\nfrom (\n select \n (data->>'xact_commit')::int8 as c, lag((data->>'xact_commit')::int8) over w as c_lag,\n (data->>'xact_rollback')::int8 as r, lag((data->>'xact_rollback')::int8) over w as r_lag,\n time, lag(time) over w as time_lag\n from db_stats\n where dbname = '$dbname' and $__timeFilter(time)\n window w as (order by time) \n) x\nwhere c >= c_lag and r >= r_lag and time > time_lag\ngroup by 1\norder by 1",
370 "refId": "A",
371 "resultFormat": "time_series",
372 "select": [
373 [
374 {
375 "params": [
376 "value"
377 ],
378 "type": "field"
379 },
380 {
381 "params": [],
382 "type": "mean"
383 }
384 ]
385 ],
386 "tags": [],
387 "timeColumn": "time",
388 "where": [
389 {
390 "name": "$__timeFilter",
391 "params": [],
392 "type": "macro"
393 }
394 ]
395 }
396 ],
397 "timeFrom": "6h",
398 "title": "TPS",
399 "type": "stat"
400 },
401 {
402 "datasource": {
403 "type": "grafana-postgresql-datasource",
404 "uid": "pgwatch-metrics"
405 },
406 "description": "Queries Per Second based on pg_stat_statements.calls. 10min avg. + 6h history",
407 "fieldConfig": {
408 "defaults": {
409 "color": {
410 "fixedColor": "rgb(31, 120, 193)",
411 "mode": "fixed"
412 },
413 "mappings": [
414 {
415 "options": {
416 "match": "null",
417 "result": {
418 "text": "N/A"
419 }
420 },
421 "type": "special"
422 }
423 ],
424 "thresholds": {
425 "mode": "absolute",
426 "steps": [
427 {
428 "color": "green",
429 "value": null
430 },
431 {
432 "color": "red",
433 "value": 80
434 }
435 ]
436 },
437 "unit": "none"
438 },
439 "overrides": []
440 },
441 "gridPos": {
442 "h": 2,
443 "w": 3,
444 "x": 9,
445 "y": 0
446 },
447 "hideTimeOverride": true,
448 "id": 2,
449 "interval": "10m",
450 "maxDataPoints": 100,
451 "options": {
452 "colorMode": "none",
453 "graphMode": "area",
454 "justifyMode": "auto",
455 "orientation": "horizontal",
456 "reduceOptions": {
457 "calcs": [
458 "lastNotNull"
459 ],
460 "fields": "",
461 "values": false
462 },
463 "showPercentChange": false,
464 "textMode": "auto",
465 "wideLayout": true
466 },
467 "pluginVersion": "10.4.1",
468 "targets": [
469 {
470 "alias": "QPS",
471 "datasource": {
472 "type": "grafana-postgresql-datasource",
473 "uid": "pgwatch-metrics"
474 },
475 "format": "time_series",
476 "group": [],
477 "groupBy": [
478 {
479 "params": [
480 "$interval"
481 ],
482 "type": "time"
483 },
484 {
485 "params": [
486 "null"
487 ],
488 "type": "fill"
489 }
490 ],
491 "metricColumn": "none",
492 "orderByTime": "ASC",
493 "policy": "default",
494 "rawQuery": true,
495 "rawSql": "select\n $__timeGroup(time, $__interval),\n avg((c - c_lag) / extract(epoch from time - time_lag)) as qps\nfrom (\n select \n (data->>'calls')::int8 as c, lag((data->>'calls')::int8) over w as c_lag,\n time, lag(time) over w as time_lag\n from stat_statements_calls\n where dbname = '$dbname' and $__timeFilter(time)\n window w as (order by time) \n) x\nwhere c >= c_lag\ngroup by 1\norder by 1\n",
496 "refId": "A",
497 "resultFormat": "time_series",
498 "select": [
499 [
500 {
501 "params": [
502 "value"
503 ],
504 "type": "field"
505 },
506 {
507 "params": [],
508 "type": "mean"
509 }
510 ]
511 ],
512 "tags": [],
513 "timeColumn": "time",
514 "where": [
515 {
516 "name": "$__timeFilter",
517 "params": [],
518 "type": "macro"
519 }
520 ]
521 }
522 ],
523 "timeFrom": "6h",
524 "title": "QPS",
525 "type": "stat"
526 },
527 {
528 "datasource": {
529 "type": "grafana-postgresql-datasource",
530 "uid": "pgwatch-metrics"
531 },
532 "description": "10min avg. + 6h history. Requires pg_stat_statements extension and the \"get_stat_statements\" helper function from the \"sql/metric_fetching_helpers\" folder on the monitored DB. Not including pgwatch generated metrics fetching queries.",
533 "fieldConfig": {
534 "defaults": {
535 "color": {
536 "fixedColor": "rgb(31, 120, 193)",
537 "mode": "fixed"
538 },
539 "mappings": [
540 {
541 "options": {
542 "match": "null",
543 "result": {
544 "text": "N/A"
545 }
546 },
547 "type": "special"
548 }
549 ],
550 "thresholds": {
551 "mode": "absolute",
552 "steps": [
553 {
554 "color": "green",
555 "value": null
556 },
557 {
558 "color": "red",
559 "value": 80
560 }
561 ]
562 },
563 "unit": "none"
564 },
565 "overrides": []
566 },
567 "gridPos": {
568 "h": 2,
569 "w": 3,
570 "x": 12,
571 "y": 0
572 },
573 "hideTimeOverride": true,
574 "id": 3,
575 "interval": "10m",
576 "maxDataPoints": 100,
577 "options": {
578 "colorMode": "none",
579 "graphMode": "area",
580 "justifyMode": "auto",
581 "orientation": "horizontal",
582 "reduceOptions": {
583 "calcs": [
584 "lastNotNull"
585 ],
586 "fields": "",
587 "values": false
588 },
589 "showPercentChange": false,
590 "textMode": "auto",
591 "wideLayout": true
592 },
593 "pluginVersion": "10.4.1",
594 "targets": [
595 {
596 "alias": "avg_query_runtime_per_db",
597 "datasource": {
598 "type": "grafana-postgresql-datasource",
599 "uid": "pgwatch-metrics"
600 },
601 "format": "time_series",
602 "group": [],
603 "groupBy": [
604 {
605 "params": [
606 "$interval"
607 ],
608 "type": "time"
609 },
610 {
611 "params": [
612 "null"
613 ],
614 "type": "fill"
615 }
616 ],
617 "metricColumn": "none",
618 "orderByTime": "ASC",
619 "policy": "default",
620 "rawQuery": true,
621 "rawSql": "select\n time,\n avg(avg) as \"avg_query_runtime\"\nfrom (\n\nselect\n$__timeGroup(time, $__interval),\nqueryid,\navg((tt-tt_lag)::numeric / (c-c_lag))\n\nfrom (\n\n select \n (data->>'total_time')::float8 as tt, lag((data->>'total_time')::float8) over w as tt_lag,\n (data->>'calls')::int8 as c, lag((data->>'calls')::int8) over w as c_lag,\n tag_data->>'queryid' as queryid,\n time\n from stat_statements\n where dbname = '$dbname' and $__timeFilter(time)\n and not tag_data->>'query' like '%$2)::int8 as epoch_ns,%' /*trying to not include queries by pgwatch itself*/\n window w as (partition by tag_data->>'queryid' order by time)\n) x\nwhere c > c_lag and tt >= tt_lag\ngroup by 1, 2\norder by 1, 2\n) y\ngroup by 1\norder by 1",
622 "refId": "A",
623 "resultFormat": "time_series",
624 "select": [
625 [
626 {
627 "params": [
628 "value"
629 ],
630 "type": "field"
631 },
632 {
633 "params": [],
634 "type": "mean"
635 }
636 ]
637 ],
638 "tags": [],
639 "timeColumn": "time",
640 "where": [
641 {
642 "name": "$__timeFilter",
643 "params": [],
644 "type": "macro"
645 }
646 ]
647 }
648 ],
649 "timeFrom": "6h",
650 "title": "Query runtime",
651 "type": "stat"
652 },
653 {
654 "datasource": {
655 "type": "grafana-postgresql-datasource",
656 "uid": "pgwatch-metrics"
657 },
658 "fieldConfig": {
659 "defaults": {
660 "color": {
661 "fixedColor": "rgb(31, 120, 193)",
662 "mode": "fixed"
663 },
664 "decimals": 1,
665 "mappings": [
666 {
667 "options": {
668 "match": "null",
669 "result": {
670 "text": "N/A"
671 }
672 },
673 "type": "special"
674 }
675 ],
676 "thresholds": {
677 "mode": "absolute",
678 "steps": [
679 {
680 "color": "green",
681 "value": null
682 },
683 {
684 "color": "red",
685 "value": 80
686 }
687 ]
688 },
689 "unit": "bytes"
690 },
691 "overrides": []
692 },
693 "gridPos": {
694 "h": 2,
695 "w": 3,
696 "x": 15,
697 "y": 0
698 },
699 "hideTimeOverride": true,
700 "id": 4,
701 "maxDataPoints": 100,
702 "options": {
703 "colorMode": "none",
704 "graphMode": "area",
705 "justifyMode": "auto",
706 "orientation": "horizontal",
707 "reduceOptions": {
708 "calcs": [
709 "lastNotNull"
710 ],
711 "fields": "",
712 "values": false
713 },
714 "showPercentChange": false,
715 "textMode": "auto",
716 "wideLayout": true
717 },
718 "pluginVersion": "10.4.1",
719 "targets": [
720 {
721 "alias": "db_size_change_last_hour",
722 "datasource": {
723 "type": "grafana-postgresql-datasource",
724 "uid": "pgwatch-metrics"
725 },
726 "format": "time_series",
727 "group": [],
728 "groupBy": [
729 {
730 "params": [
731 "$interval"
732 ],
733 "type": "time"
734 },
735 {
736 "params": [
737 "null"
738 ],
739 "type": "fill"
740 }
741 ],
742 "metricColumn": "none",
743 "orderByTime": "ASC",
744 "policy": "default",
745 "query": "",
746 "rawQuery": true,
747 "rawSql": "select\n time,\n last_value - first_value\nfrom (\nselect\n time,\n max(first_value) as first_value,\n max(last_value) as last_value\nfrom (\n select\n date_trunc('hour', time) as time,\n first_value((data->>'size_b')::int8) over w,\n last_value((data->>'size_b')::int8) over w\n from\n db_size\n where \n dbname = '$dbname' and $__timeFilter(time)\n window w as (\n partition by date_trunc('hour', time) order by time rows BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING\n )\n) x\ngroup by 1\nhaving count(*) > 1 -- if only 1 entry in time block, diff will be always 0\n) y\norder by 1;",
748 "refId": "A",
749 "resultFormat": "time_series",
750 "select": [
751 [
752 {
753 "params": [
754 "value"
755 ],
756 "type": "field"
757 },
758 {
759 "params": [],
760 "type": "mean"
761 }
762 ]
763 ],
764 "tags": [],
765 "timeColumn": "time",
766 "where": [
767 {
768 "name": "$__timeFilter",
769 "params": [],
770 "type": "macro"
771 }
772 ]
773 }
774 ],
775 "timeFrom": "6h",
776 "title": "DB size ch. 1h",
777 "type": "stat"
778 },
779 {
780 "datasource": {
781 "type": "grafana-postgresql-datasource",
782 "uid": "pgwatch-metrics"
783 },
784 "description": "Based on a pure SQL based estimate for fast results. Re-check with \"pgstattuple\" if numbers look suspicious!",
785 "fieldConfig": {
786 "defaults": {
787 "color": {
788 "fixedColor": "rgb(31, 120, 193)",
789 "mode": "fixed"
790 },
791 "decimals": 1,
792 "mappings": [
793 {
794 "options": {
795 "match": "null",
796 "result": {
797 "text": "N/A"
798 }
799 },
800 "type": "special"
801 }
802 ],
803 "thresholds": {
804 "mode": "absolute",
805 "steps": [
806 {
807 "color": "green",
808 "value": null
809 },
810 {
811 "color": "red",
812 "value": 80
813 }
814 ]
815 },
816 "unit": "bytes"
817 },
818 "overrides": []
819 },
820 "gridPos": {
821 "h": 2,
822 "w": 3,
823 "x": 18,
824 "y": 0
825 },
826 "hideTimeOverride": true,
827 "id": 5,
828 "maxDataPoints": 100,
829 "options": {
830 "colorMode": "none",
831 "graphMode": "area",
832 "justifyMode": "auto",
833 "orientation": "horizontal",
834 "reduceOptions": {
835 "calcs": [
836 "lastNotNull"
837 ],
838 "fields": "",
839 "values": false
840 },
841 "showPercentChange": false,
842 "textMode": "auto",
843 "wideLayout": true
844 },
845 "pluginVersion": "10.4.1",
846 "targets": [
847 {
848 "alias": "Bloat size",
849 "datasource": {
850 "type": "grafana-postgresql-datasource",
851 "uid": "pgwatch-metrics"
852 },
853 "format": "time_series",
854 "group": [],
855 "groupBy": [
856 {
857 "params": [
858 "1h"
859 ],
860 "type": "time"
861 },
862 {
863 "params": [
864 "none"
865 ],
866 "type": "fill"
867 }
868 ],
869 "measurement": "table_bloat_approx_summary",
870 "metricColumn": "none",
871 "orderByTime": "ASC",
872 "policy": "default",
873 "query": "",
874 "rawQuery": true,
875 "rawSql": "SELECT\n time,\n avg((data->'approx_table_bloat_b')::int8)\nFROM\n table_bloat_approx_summary_sql\nWHERE\n $__timeFilter(time)\n AND dbname = '$dbname'\nGROUP BY\n 1\nORDER BY\n 1\n",
876 "refId": "A",
877 "resultFormat": "time_series",
878 "select": [
879 [
880 {
881 "params": [
882 "approx_free_space_b"
883 ],
884 "type": "field"
885 },
886 {
887 "params": [],
888 "type": "mean"
889 }
890 ]
891 ],
892 "tags": [
893 {
894 "key": "dbname",
895 "operator": "=~",
896 "value": "/^$dbname$/"
897 }
898 ],
899 "timeColumn": "time",
900 "where": [
901 {
902 "name": "$__timeFilter",
903 "params": [],
904 "type": "macro"
905 }
906 ]
907 }
908 ],
909 "timeFrom": "6h",
910 "title": "Approx Table Bloat",
911 "type": "stat"
912 },
913 {
914 "datasource": {
915 "type": "grafana-postgresql-datasource",
916 "uid": "pgwatch-metrics"
917 },
918 "description": "Percentage of rows touched by queries that are actually returned to the client. Low numbers (< 10%) for an OLTP workload can hint at missing indexes",
919 "fieldConfig": {
920 "defaults": {
921 "color": {
922 "fixedColor": "rgb(31, 120, 193)",
923 "mode": "fixed"
924 },
925 "decimals": 1,
926 "mappings": [
927 {
928 "options": {
929 "match": "null",
930 "result": {
931 "text": "N/A"
932 }
933 },
934 "type": "special"
935 }
936 ],
937 "thresholds": {
938 "mode": "absolute",
939 "steps": [
940 {
941 "color": "green",
942 "value": null
943 },
944 {
945 "color": "red",
946 "value": 80
947 }
948 ]
949 },
950 "unit": "percent"
951 },
952 "overrides": []
953 },
954 "gridPos": {
955 "h": 2,
956 "w": 3,
957 "x": 21,
958 "y": 0
959 },
960 "hideTimeOverride": true,
961 "id": 6,
962 "interval": "10m",
963 "maxDataPoints": 100,
964 "options": {
965 "colorMode": "none",
966 "graphMode": "area",
967 "justifyMode": "auto",
968 "orientation": "horizontal",
969 "reduceOptions": {
970 "calcs": [
971 "lastNotNull"
972 ],
973 "fields": "",
974 "values": false
975 },
976 "showPercentChange": false,
977 "textMode": "auto",
978 "wideLayout": true
979 },
980 "pluginVersion": "10.4.1",
981 "targets": [
982 {
983 "alias": "load_5",
984 "datasource": {
985 "type": "grafana-postgresql-datasource",
986 "uid": "pgwatch-metrics"
987 },
988 "format": "time_series",
989 "group": [],
990 "groupBy": [
991 {
992 "params": [
993 "$__interval"
994 ],
995 "type": "time"
996 },
997 {
998 "params": [
999 "none"
1000 ],
1001 "type": "fill"
1002 }
1003 ],
1004 "measurement": "cpu_load",
1005 "metricColumn": "none",
1006 "orderByTime": "ASC",
1007 "policy": "default",
1008 "query": "",
1009 "rawQuery": true,
1010 "rawSql": "SELECT\n $__timeGroup(time, $__interval),\n 100 * avg((fetched - fetched_lag)::numeric / (returned - returned_lag)) as fetched_vs_returned_pct\nFROM (\n\nSELECT\n time,\n (data->'tup_fetched')::int8 as fetched,\n lag((data->'tup_fetched')::int8) over w as fetched_lag,\n (data->'tup_returned')::int8 as returned,\n lag((data->'tup_returned')::int8) over w as returned_lag\nFROM\n db_stats\nWHERE\n $__timeFilter(time)\n AND dbname = '$dbname'\nWINDOW w AS (ORDER BY time)\n) x \nWHERE returned > returned_lag AND fetched >= fetched_lag\nGROUP BY 1\nORDER BY 1\n\n",
1011 "refId": "A",
1012 "resultFormat": "time_series",
1013 "select": [
1014 [
1015 {
1016 "params": [
1017 "load_5min"
1018 ],
1019 "type": "field"
1020 },
1021 {
1022 "params": [],
1023 "type": "mean"
1024 }
1025 ]
1026 ],
1027 "tags": [
1028 {
1029 "key": "dbname",
1030 "operator": "=~",
1031 "value": "/^$dbname$/"
1032 }
1033 ],
1034 "timeColumn": "time",
1035 "where": [
1036 {
1037 "name": "$__timeFilter",
1038 "params": [],
1039 "type": "macro"
1040 }
1041 ]
1042 }
1043 ],
1044 "timeFrom": "6h",
1045 "title": "Tuples fetched vs returned",
1046 "type": "stat"
1047 },
1048 {
1049 "datasource": {
1050 "type": "grafana-postgresql-datasource",
1051 "uid": "pgwatch-metrics"
1052 },
1053 "description": "",
1054 "fieldConfig": {
1055 "defaults": {
1056 "color": {
1057 "mode": "palette-classic"
1058 },
1059 "custom": {
1060 "axisBorderShow": false,
1061 "axisCenteredZero": false,
1062 "axisColorMode": "text",
1063 "axisLabel": "",
1064 "axisPlacement": "auto",
1065 "barAlignment": 0,
1066 "drawStyle": "line",
1067 "fillOpacity": 10,
1068 "gradientMode": "none",
1069 "hideFrom": {
1070 "legend": false,
1071 "tooltip": false,
1072 "viz": false
1073 },
1074 "insertNulls": false,
1075 "lineInterpolation": "linear",
1076 "lineWidth": 2,
1077 "pointSize": 5,
1078 "scaleDistribution": {
1079 "log": 10,
1080 "type": "log"
1081 },
1082 "showPoints": "never",
1083 "spanNulls": true,
1084 "stacking": {
1085 "group": "A",
1086 "mode": "none"
1087 },
1088 "thresholdsStyle": {
1089 "mode": "off"
1090 }
1091 },
1092 "decimals": 1,
1093 "links": [],
1094 "mappings": [],
1095 "thresholds": {
1096 "mode": "absolute",
1097 "steps": [
1098 {
1099 "color": "green",
1100 "value": null
1101 },
1102 {
1103 "color": "red",
1104 "value": 80
1105 }
1106 ]
1107 },
1108 "unit": "short"
1109 },
1110 "overrides": [
1111 {
1112 "matcher": {
1113 "id": "byName",
1114 "options": "db_stats.mean"
1115 },
1116 "properties": [
1117 {
1118 "id": "unit",
1119 "value": "ms"
1120 },
1121 {
1122 "id": "custom.axisPlacement",
1123 "value": "hidden"
1124 }
1125 ]
1126 },
1127 {
1128 "matcher": {
1129 "id": "byName",
1130 "options": "DB size"
1131 },
1132 "properties": [
1133 {
1134 "id": "unit",
1135 "value": "ms"
1136 },
1137 {
1138 "id": "custom.axisPlacement",
1139 "value": "hidden"
1140 }
1141 ]
1142 },
1143 {
1144 "matcher": {
1145 "id": "byName",
1146 "options": "blk_read_time"
1147 },
1148 "properties": [
1149 {
1150 "id": "unit",
1151 "value": "ms"
1152 },
1153 {
1154 "id": "custom.axisPlacement",
1155 "value": "hidden"
1156 }
1157 ]
1158 },
1159 {
1160 "matcher": {
1161 "id": "byName",
1162 "options": "blk_write_time"
1163 },
1164 "properties": [
1165 {
1166 "id": "unit",
1167 "value": "ms"
1168 },
1169 {
1170 "id": "custom.axisPlacement",
1171 "value": "hidden"
1172 }
1173 ]
1174 }
1175 ]
1176 },
1177 "gridPos": {
1178 "h": 6,
1179 "w": 12,
1180 "x": 0,
1181 "y": 2
1182 },
1183 "id": 7,
1184 "interval": "5m",
1185 "options": {
1186 "legend": {
1187 "calcs": [
1188 "mean"
1189 ],
1190 "displayMode": "list",
1191 "placement": "bottom",
1192 "showLegend": true
1193 },
1194 "tooltip": {
1195 "mode": "multi",
1196 "sort": "none"
1197 }
1198 },
1199 "pluginVersion": "10.4.1",
1200 "targets": [
1201 {
1202 "alias": "DELETE",
1203 "datasource": {
1204 "type": "grafana-postgresql-datasource",
1205 "uid": "pgwatch-metrics"
1206 },
1207 "format": "time_series",
1208 "group": [],
1209 "groupBy": [
1210 {
1211 "params": [
1212 "$interval"
1213 ],
1214 "type": "time"
1215 },
1216 {
1217 "params": [
1218 "null"
1219 ],
1220 "type": "fill"
1221 }
1222 ],
1223 "measurement": "db_stats",
1224 "metricColumn": "none",
1225 "orderByTime": "ASC",
1226 "policy": "default",
1227 "query": "",
1228 "rawQuery": true,
1229 "rawSql": "select\n $__timeGroup(time, $agg_interval),\n avg(((ins-ins_lag) * (extract(epoch from '$agg_interval'::interval))) / extract(epoch from time - time_lag)) as \"INSERT\",\n avg(((upd-upd_lag) * (extract(epoch from '$agg_interval'::interval))) / extract(epoch from time - time_lag)) as \"UPDATE\",\n avg(((del-del_lag) * (extract(epoch from '$agg_interval'::interval))) / extract(epoch from time - time_lag)) as \"DELETE\"\nfrom (\n select \n (data->>'tup_inserted')::int8 as ins, lag((data->>'tup_inserted')::int8) over w as ins_lag,\n (data->>'tup_updated')::int8 as upd, lag((data->>'tup_updated')::int8) over w as upd_lag,\n (data->>'tup_deleted')::int8 as del, lag((data->>'tup_deleted')::int8) over w as del_lag,\n time, lag(time) over w as time_lag\n from db_stats\n where dbname = '$dbname' and $__timeFilter(time)\n window w as (order by time)\n) x\nwhere ins >= ins_lag and upd >= upd_lag and del >= del_lag\ngroup by 1\norder by 1",
1230 "refId": "A",
1231 "resultFormat": "time_series",
1232 "select": [
1233 [
1234 {
1235 "params": [
1236 "tup_deleted"
1237 ],
1238 "type": "field"
1239 },
1240 {
1241 "params": [],
1242 "type": "mean"
1243 }
1244 ]
1245 ],
1246 "tags": [
1247 {
1248 "key": "dbname",
1249 "operator": "=~",
1250 "value": "/^$dbname$/"
1251 }
1252 ],
1253 "timeColumn": "time",
1254 "where": [
1255 {
1256 "name": "$__timeFilter",
1257 "params": [],
1258 "type": "macro"
1259 }
1260 ]
1261 }
1262 ],
1263 "title": "Tuple ins. / upd. / del. statistics ($agg_interval avg. rate, log. scale)",
1264 "type": "timeseries"
1265 },
1266 {
1267 "datasource": {
1268 "type": "grafana-postgresql-datasource",
1269 "uid": "pgwatch-metrics"
1270 },
1271 "fieldConfig": {
1272 "defaults": {
1273 "color": {
1274 "mode": "palette-classic"
1275 },
1276 "custom": {
1277 "axisBorderShow": false,
1278 "axisCenteredZero": false,
1279 "axisColorMode": "text",
1280 "axisLabel": "",
1281 "axisPlacement": "auto",
1282 "barAlignment": 0,
1283 "drawStyle": "line",
1284 "fillOpacity": 10,
1285 "gradientMode": "none",
1286 "hideFrom": {
1287 "legend": false,
1288 "tooltip": false,
1289 "viz": false
1290 },
1291 "insertNulls": false,
1292 "lineInterpolation": "linear",
1293 "lineWidth": 2,
1294 "pointSize": 5,
1295 "scaleDistribution": {
1296 "type": "linear"
1297 },
1298 "showPoints": "never",
1299 "spanNulls": true,
1300 "stacking": {
1301 "group": "A",
1302 "mode": "none"
1303 },
1304 "thresholdsStyle": {
1305 "mode": "off"
1306 }
1307 },
1308 "links": [],
1309 "mappings": [],
1310 "max": 105,
1311 "thresholds": {
1312 "mode": "absolute",
1313 "steps": [
1314 {
1315 "color": "green",
1316 "value": null
1317 },
1318 {
1319 "color": "red",
1320 "value": 80
1321 }
1322 ]
1323 },
1324 "unit": "percent"
1325 },
1326 "overrides": [
1327 {
1328 "matcher": {
1329 "id": "byName",
1330 "options": "TX rollback ratio"
1331 },
1332 "properties": [
1333 {
1334 "id": "color",
1335 "value": {
1336 "fixedColor": "#890F02",
1337 "mode": "fixed"
1338 }
1339 }
1340 ]
1341 }
1342 ]
1343 },
1344 "gridPos": {
1345 "h": 6,
1346 "w": 12,
1347 "x": 12,
1348 "y": 2
1349 },
1350 "id": 8,
1351 "interval": "5m",
1352 "options": {
1353 "legend": {
1354 "calcs": [
1355 "mean"
1356 ],
1357 "displayMode": "list",
1358 "placement": "bottom",
1359 "showLegend": true
1360 },
1361 "tooltip": {
1362 "mode": "multi",
1363 "sort": "none"
1364 }
1365 },
1366 "pluginVersion": "10.4.1",
1367 "targets": [
1368 {
1369 "alias": "Shared buffers hit ratio",
1370 "datasource": {
1371 "type": "grafana-postgresql-datasource",
1372 "uid": "pgwatch-metrics"
1373 },
1374 "format": "time_series",
1375 "group": [],
1376 "groupBy": [
1377 {
1378 "params": [
1379 "$interval"
1380 ],
1381 "type": "time"
1382 },
1383 {
1384 "params": [
1385 "null"
1386 ],
1387 "type": "fill"
1388 }
1389 ],
1390 "hide": false,
1391 "measurement": "db_stats",
1392 "metricColumn": "none",
1393 "orderByTime": "ASC",
1394 "policy": "default",
1395 "rawQuery": true,
1396 "rawSql": "select\n $__timeGroup(time, $agg_interval),\n avg((hit-hit_lag)::numeric / ((hit-hit_lag) + (read-read_lag)))*100 as \"Shared buffers hit ratio\",\n avg((roll-roll_lag)::numeric / ((roll-roll_lag) + (comm-comm_lag)))*100 as \"TX rollback ratio\"\nfrom (\n select \n (data->>'blks_hit')::int8 as hit, lag((data->>'blks_hit')::int8) over w as hit_lag,\n (data->>'blks_read')::int8 as read, lag((data->>'blks_read')::int8) over w as read_lag,\n (data->>'xact_rollback')::int8 as roll, lag((data->>'xact_rollback')::int8) over w as roll_lag,\n (data->>'xact_commit')::int8 as comm, lag((data->>'xact_commit')::int8) over w as comm_lag,\n time\n from db_stats\n where dbname = '$dbname' and $__timeFilter(time)\n window w as (order by time)\n) x\nwhere (hit > hit_lag or read > read_lag) and (roll > roll_lag or comm > comm_lag)\ngroup by 1\norder by 1",
1397 "refId": "A",
1398 "resultFormat": "time_series",
1399 "select": [
1400 [
1401 {
1402 "params": [
1403 "blks_hit"
1404 ],
1405 "type": "field"
1406 },
1407 {
1408 "params": [],
1409 "type": "mean"
1410 }
1411 ]
1412 ],
1413 "tags": [],
1414 "timeColumn": "time",
1415 "where": [
1416 {
1417 "name": "$__timeFilter",
1418 "params": [],
1419 "type": "macro"
1420 }
1421 ]
1422 }
1423 ],
1424 "title": "Shared Buffers hit ratio + Rollback ratio ($agg_interval avg.)",
1425 "type": "timeseries"
1426 },
1427 {
1428 "datasource": {
1429 "type": "grafana-postgresql-datasource",
1430 "uid": "pgwatch-metrics"
1431 },
1432 "fieldConfig": {
1433 "defaults": {
1434 "color": {
1435 "mode": "palette-classic"
1436 },
1437 "custom": {
1438 "axisBorderShow": false,
1439 "axisCenteredZero": false,
1440 "axisColorMode": "text",
1441 "axisLabel": "",
1442 "axisPlacement": "auto",
1443 "barAlignment": 0,
1444 "drawStyle": "line",
1445 "fillOpacity": 10,
1446 "gradientMode": "none",
1447 "hideFrom": {
1448 "legend": false,
1449 "tooltip": false,
1450 "viz": false
1451 },
1452 "insertNulls": false,
1453 "lineInterpolation": "linear",
1454 "lineWidth": 2,
1455 "pointSize": 5,
1456 "scaleDistribution": {
1457 "type": "linear"
1458 },
1459 "showPoints": "never",
1460 "spanNulls": true,
1461 "stacking": {
1462 "group": "A",
1463 "mode": "none"
1464 },
1465 "thresholdsStyle": {
1466 "mode": "off"
1467 }
1468 },
1469 "links": [],
1470 "mappings": [],
1471 "min": 0,
1472 "thresholds": {
1473 "mode": "absolute",
1474 "steps": [
1475 {
1476 "color": "green",
1477 "value": null
1478 },
1479 {
1480 "color": "red",
1481 "value": 80
1482 }
1483 ]
1484 },
1485 "unit": "short"
1486 },
1487 "overrides": [
1488 {
1489 "matcher": {
1490 "id": "byName",
1491 "options": "# Sessions"
1492 },
1493 "properties": [
1494 {
1495 "id": "color",
1496 "value": {
1497 "fixedColor": "#cca300",
1498 "mode": "fixed"
1499 }
1500 }
1501 ]
1502 },
1503 {
1504 "matcher": {
1505 "id": "byName",
1506 "options": "#Backends"
1507 },
1508 "properties": [
1509 {
1510 "id": "color",
1511 "value": {
1512 "fixedColor": "#F9E2D2",
1513 "mode": "fixed"
1514 }
1515 }
1516 ]
1517 },
1518 {
1519 "matcher": {
1520 "id": "byName",
1521 "options": "Deadlocks"
1522 },
1523 "properties": [
1524 {
1525 "id": "color",
1526 "value": {
1527 "fixedColor": "dark-red",
1528 "mode": "fixed"
1529 }
1530 }
1531 ]
1532 },
1533 {
1534 "matcher": {
1535 "id": "byName",
1536 "options": "Deadlocks (1h rate)"
1537 },
1538 "properties": [
1539 {
1540 "id": "color",
1541 "value": {
1542 "fixedColor": "#BF1B00",
1543 "mode": "fixed"
1544 }
1545 }
1546 ]
1547 },
1548 {
1549 "matcher": {
1550 "id": "byName",
1551 "options": "QPS"
1552 },
1553 "properties": [
1554 {
1555 "id": "color",
1556 "value": {
1557 "fixedColor": "dark-green",
1558 "mode": "fixed"
1559 }
1560 }
1561 ]
1562 },
1563 {
1564 "matcher": {
1565 "id": "byName",
1566 "options": "TPS"
1567 },
1568 "properties": [
1569 {
1570 "id": "color",
1571 "value": {
1572 "fixedColor": "dark-orange",
1573 "mode": "fixed"
1574 }
1575 }
1576 ]
1577 },
1578 {
1579 "matcher": {
1580 "id": "byName",
1581 "options": "Temp bytes (1h rate)"
1582 },
1583 "properties": [
1584 {
1585 "id": "color",
1586 "value": {
1587 "fixedColor": "#6ed0e0",
1588 "mode": "fixed"
1589 }
1590 }
1591 ]
1592 }
1593 ]
1594 },
1595 "gridPos": {
1596 "h": 6,
1597 "w": 12,
1598 "x": 0,
1599 "y": 8
1600 },
1601 "id": 9,
1602 "interval": "",
1603 "options": {
1604 "legend": {
1605 "calcs": [
1606 "mean"
1607 ],
1608 "displayMode": "list",
1609 "placement": "bottom",
1610 "showLegend": true
1611 },
1612 "tooltip": {
1613 "mode": "multi",
1614 "sort": "desc"
1615 }
1616 },
1617 "pluginVersion": "10.4.1",
1618 "targets": [
1619 {
1620 "alias": "# Sessions",
1621 "datasource": {
1622 "type": "grafana-postgresql-datasource",
1623 "uid": "pgwatch-metrics"
1624 },
1625 "format": "time_series",
1626 "group": [],
1627 "groupBy": [
1628 {
1629 "params": [
1630 "$interval"
1631 ],
1632 "type": "time"
1633 },
1634 {
1635 "params": [
1636 "none"
1637 ],
1638 "type": "fill"
1639 }
1640 ],
1641 "measurement": "db_stats",
1642 "metricColumn": "none",
1643 "orderByTime": "ASC",
1644 "policy": "default",
1645 "query": "",
1646 "rawQuery": true,
1647 "rawSql": "select\n $__timeGroup(time, $agg_interval),\n avg((c - c_lag + r - r_lag) / extract(epoch from time - time_lag)) as \"TPS\"\nfrom (\n select \n (data->>'xact_commit')::int8 as c, lag((data->>'xact_commit')::int8) over w as c_lag,\n (data->>'xact_rollback')::int8 as r, lag((data->>'xact_rollback')::int8) over w as r_lag,\n time, lag(time) over w as time_lag\n from db_stats\n where dbname = '$dbname' and $__timeFilter(time)\n window w as (order by time) \n) x\nwhere time > time_lag and c >= c_lag\ngroup by 1\norder by 1",
1648 "refId": "B",
1649 "resultFormat": "time_series",
1650 "select": [
1651 [
1652 {
1653 "params": [
1654 "numbackends"
1655 ],
1656 "type": "field"
1657 },
1658 {
1659 "params": [],
1660 "type": "mean"
1661 }
1662 ]
1663 ],
1664 "tags": [],
1665 "timeColumn": "time",
1666 "where": [
1667 {
1668 "name": "$__timeFilter",
1669 "params": [],
1670 "type": "macro"
1671 }
1672 ]
1673 },
1674 {
1675 "datasource": {
1676 "type": "grafana-postgresql-datasource",
1677 "uid": "pgwatch-metrics"
1678 },
1679 "format": "time_series",
1680 "group": [],
1681 "metricColumn": "none",
1682 "rawQuery": true,
1683 "rawSql": "select\n $__timeGroup(time, $agg_interval),\n avg((c - c_lag) / extract(epoch from time - time_lag)) as \"QPS\"\nfrom (\n select \n (data->>'calls')::int8 as c, lag((data->>'calls')::int8) over w as c_lag,\n time, lag(time) over w as time_lag\n from stat_statements_calls\n where dbname = '$dbname' and $__timeFilter(time)\n window w as (order by time) \n) x\nwhere time > time_lag and c >= c_lag\ngroup by 1\norder by 1\n",
1684 "refId": "A",
1685 "select": [
1686 [
1687 {
1688 "params": [
1689 "value"
1690 ],
1691 "type": "column"
1692 }
1693 ]
1694 ],
1695 "timeColumn": "time",
1696 "where": [
1697 {
1698 "name": "$__timeFilter",
1699 "params": [],
1700 "type": "macro"
1701 }
1702 ]
1703 }
1704 ],
1705 "title": "TPS / QPS ($agg_interval avg.)",
1706 "type": "timeseries"
1707 },
1708 {
1709 "datasource": {
1710 "type": "grafana-postgresql-datasource",
1711 "uid": "pgwatch-metrics"
1712 },
1713 "fieldConfig": {
1714 "defaults": {
1715 "color": {
1716 "mode": "palette-classic"
1717 },
1718 "custom": {
1719 "axisBorderShow": false,
1720 "axisCenteredZero": false,
1721 "axisColorMode": "text",
1722 "axisLabel": "",
1723 "axisPlacement": "auto",
1724 "barAlignment": 0,
1725 "drawStyle": "line",
1726 "fillOpacity": 10,
1727 "gradientMode": "none",
1728 "hideFrom": {
1729 "legend": false,
1730 "tooltip": false,
1731 "viz": false
1732 },
1733 "insertNulls": false,
1734 "lineInterpolation": "linear",
1735 "lineWidth": 2,
1736 "pointSize": 5,
1737 "scaleDistribution": {
1738 "type": "linear"
1739 },
1740 "showPoints": "never",
1741 "spanNulls": true,
1742 "stacking": {
1743 "group": "A",
1744 "mode": "none"
1745 },
1746 "thresholdsStyle": {
1747 "mode": "off"
1748 }
1749 },
1750 "decimals": 1,
1751 "links": [],
1752 "mappings": [],
1753 "thresholds": {
1754 "mode": "absolute",
1755 "steps": [
1756 {
1757 "color": "green",
1758 "value": null
1759 },
1760 {
1761 "color": "red",
1762 "value": 80
1763 }
1764 ]
1765 },
1766 "unit": "Bps"
1767 },
1768 "overrides": [
1769 {
1770 "matcher": {
1771 "id": "byName",
1772 "options": "DB Size"
1773 },
1774 "properties": [
1775 {
1776 "id": "color",
1777 "value": {
1778 "fixedColor": "#2F575E",
1779 "mode": "fixed"
1780 }
1781 }
1782 ]
1783 },
1784 {
1785 "matcher": {
1786 "id": "byName",
1787 "options": "WAL rate"
1788 },
1789 "properties": [
1790 {
1791 "id": "color",
1792 "value": {
1793 "fixedColor": "#0A50A1",
1794 "mode": "fixed"
1795 }
1796 }
1797 ]
1798 },
1799 {
1800 "matcher": {
1801 "id": "byName",
1802 "options": "DB Size"
1803 },
1804 "properties": [
1805 {
1806 "id": "unit",
1807 "value": "bytes"
1808 }
1809 ]
1810 }
1811 ]
1812 },
1813 "gridPos": {
1814 "h": 6,
1815 "w": 12,
1816 "x": 12,
1817 "y": 8
1818 },
1819 "id": 10,
1820 "interval": "2m",
1821 "options": {
1822 "legend": {
1823 "calcs": [
1824 "mean"
1825 ],
1826 "displayMode": "list",
1827 "placement": "bottom",
1828 "showLegend": true
1829 },
1830 "tooltip": {
1831 "mode": "multi",
1832 "sort": "none"
1833 }
1834 },
1835 "pluginVersion": "10.4.1",
1836 "targets": [
1837 {
1838 "alias": "WAL rate",
1839 "datasource": {
1840 "type": "grafana-postgresql-datasource",
1841 "uid": "pgwatch-metrics"
1842 },
1843 "format": "time_series",
1844 "group": [],
1845 "groupBy": [
1846 {
1847 "params": [
1848 "$interval"
1849 ],
1850 "type": "time"
1851 },
1852 {
1853 "params": [
1854 "null"
1855 ],
1856 "type": "fill"
1857 }
1858 ],
1859 "measurement": "wal",
1860 "metricColumn": "none",
1861 "orderByTime": "ASC",
1862 "policy": "default",
1863 "query": "",
1864 "rawQuery": true,
1865 "rawSql": "select\n $__timeGroup(time, $agg_interval),\n avg((wal-wal_lag) / (etime-lag_etime)) as \"WAL rate\"\nfrom (\n select \n (data->>'xlog_location_b')::int8 as wal, lag((data->>'xlog_location_b')::int8) over w as wal_lag,\n extract(epoch from time) as etime,\n lag(extract(epoch from time)) over w as lag_etime,\n time\n from wal\n where dbname = '$dbname' and $__timeFilter(time)\n window w as (order by time)\n) x\nwhere wal >= wal_lag and etime - lag_etime > 0\ngroup by 1\norder by 1",
1866 "refId": "A",
1867 "resultFormat": "time_series",
1868 "select": [
1869 [
1870 {
1871 "params": [
1872 "xlog_location_b"
1873 ],
1874 "type": "field"
1875 },
1876 {
1877 "params": [],
1878 "type": "mean"
1879 },
1880 {
1881 "params": [
1882 "1h"
1883 ],
1884 "type": "derivative"
1885 }
1886 ]
1887 ],
1888 "tags": [
1889 {
1890 "key": "dbname",
1891 "operator": "=~",
1892 "value": "/^$dbname$/"
1893 }
1894 ],
1895 "timeColumn": "time",
1896 "where": [
1897 {
1898 "name": "$__timeFilter",
1899 "params": [],
1900 "type": "macro"
1901 }
1902 ]
1903 },
1904 {
1905 "datasource": {
1906 "type": "grafana-postgresql-datasource",
1907 "uid": "pgwatch-metrics"
1908 },
1909 "format": "time_series",
1910 "group": [],
1911 "metricColumn": "none",
1912 "rawQuery": true,
1913 "rawSql": "select\n $__timeGroup(time, $agg_interval),\n avg(size_b) as \"DB Size\"\nfrom (\n select \n (data->>'size_b')::int8 as size_b,\n time\n from db_size\n where dbname = '$dbname' and $__timeFilter(time)\n) x\ngroup by 1\norder by 1",
1914 "refId": "B",
1915 "select": [
1916 [
1917 {
1918 "params": [
1919 "value"
1920 ],
1921 "type": "column"
1922 }
1923 ]
1924 ],
1925 "timeColumn": "time",
1926 "where": [
1927 {
1928 "name": "$__timeFilter",
1929 "params": [],
1930 "type": "macro"
1931 }
1932 ]
1933 }
1934 ],
1935 "title": "WAL rate + DB size ($agg_interval avg.)",
1936 "type": "timeseries"
1937 },
1938 {
1939 "datasource": {
1940 "type": "grafana-postgresql-datasource",
1941 "uid": "pgwatch-metrics"
1942 },
1943 "description": "Based on get_stat_activity() helper",
1944 "fieldConfig": {
1945 "defaults": {
1946 "color": {
1947 "mode": "palette-classic"
1948 },
1949 "custom": {
1950 "axisBorderShow": false,
1951 "axisCenteredZero": false,
1952 "axisColorMode": "text",
1953 "axisLabel": "",
1954 "axisPlacement": "auto",
1955 "barAlignment": 0,
1956 "drawStyle": "line",
1957 "fillOpacity": 10,
1958 "gradientMode": "none",
1959 "hideFrom": {
1960 "legend": false,
1961 "tooltip": false,
1962 "viz": false
1963 },
1964 "insertNulls": false,
1965 "lineInterpolation": "linear",
1966 "lineWidth": 1,
1967 "pointSize": 5,
1968 "scaleDistribution": {
1969 "type": "linear"
1970 },
1971 "showPoints": "never",
1972 "spanNulls": false,
1973 "stacking": {
1974 "group": "A",
1975 "mode": "none"
1976 },
1977 "thresholdsStyle": {
1978 "mode": "off"
1979 }
1980 },
1981 "links": [],
1982 "mappings": [],
1983 "min": 0,
1984 "thresholds": {
1985 "mode": "absolute",
1986 "steps": [
1987 {
1988 "color": "green",
1989 "value": null
1990 },
1991 {
1992 "color": "red",
1993 "value": 80
1994 }
1995 ]
1996 },
1997 "unit": "short"
1998 },
1999 "overrides": [
2000 {
2001 "matcher": {
2002 "id": "byName",
2003 "options": "idle in transaction"
2004 },
2005 "properties": [
2006 {
2007 "id": "color",
2008 "value": {
2009 "fixedColor": "#bf1b00",
2010 "mode": "fixed"
2011 }
2012 }
2013 ]
2014 },
2015 {
2016 "matcher": {
2017 "id": "byValue",
2018 "options": {
2019 "op": "gte",
2020 "reducer": "allIsNull",
2021 "value": 0
2022 }
2023 },
2024 "properties": [
2025 {
2026 "id": "custom.hideFrom",
2027 "value": {
2028 "legend": true,
2029 "tooltip": true,
2030 "viz": false
2031 }
2032 }
2033 ]
2034 }
2035 ]
2036 },
2037 "gridPos": {
2038 "h": 6,
2039 "w": 12,
2040 "x": 0,
2041 "y": 14
2042 },
2043 "id": 11,
2044 "interval": "5m",
2045 "options": {
2046 "legend": {
2047 "calcs": [
2048 "mean"
2049 ],
2050 "displayMode": "list",
2051 "placement": "bottom",
2052 "showLegend": true
2053 },
2054 "tooltip": {
2055 "mode": "multi",
2056 "sort": "desc"
2057 }
2058 },
2059 "pluginVersion": "10.4.1",
2060 "targets": [
2061 {
2062 "alias": "idle",
2063 "datasource": {
2064 "type": "grafana-postgresql-datasource",
2065 "uid": "pgwatch-metrics"
2066 },
2067 "format": "time_series",
2068 "group": [],
2069 "groupBy": [
2070 {
2071 "params": [
2072 "$__interval"
2073 ],
2074 "type": "time"
2075 },
2076 {
2077 "params": [
2078 "none"
2079 ],
2080 "type": "fill"
2081 }
2082 ],
2083 "measurement": "backends",
2084 "metricColumn": "none",
2085 "orderByTime": "ASC",
2086 "policy": "default",
2087 "query": "",
2088 "rawQuery": true,
2089 "rawSql": "select\n $__timeGroup(time, $agg_interval),\n avg((data->>'idle')::int8) as idle,\n avg((data->>'idleintransaction')::int8) as \"idle in transaction\",\n avg((data->>'waiting')::int8) as waiting,\n avg((data->>'active')::int8) as active,\n avg((data->>'av_workers')::int8) as av_workers\nfrom backends\n where dbname = '$dbname' and $__timeFilter(time)\ngroup by 1\norder by 1",
2090 "refId": "A",
2091 "resultFormat": "time_series",
2092 "select": [
2093 [
2094 {
2095 "params": [
2096 "idle"
2097 ],
2098 "type": "field"
2099 },
2100 {
2101 "params": [],
2102 "type": "mean"
2103 }
2104 ]
2105 ],
2106 "tags": [
2107 {
2108 "key": "dbname",
2109 "operator": "=~",
2110 "value": "/^$dbname$/"
2111 }
2112 ],
2113 "timeColumn": "time",
2114 "where": [
2115 {
2116 "name": "$__timeFilter",
2117 "params": [],
2118 "type": "macro"
2119 }
2120 ]
2121 }
2122 ],
2123 "title": "Sessions by state ($agg_interval avg.)",
2124 "type": "timeseries"
2125 },
2126 {
2127 "datasource": {
2128 "type": "grafana-postgresql-datasource",
2129 "uid": "pgwatch-metrics"
2130 },
2131 "description": "Requires according \"metric fetching helpers\" on the monitored server. Not including pgwatch generated metrics fetching queries.",
2132 "fieldConfig": {
2133 "defaults": {
2134 "color": {
2135 "mode": "palette-classic"
2136 },
2137 "custom": {
2138 "axisBorderShow": false,
2139 "axisCenteredZero": false,
2140 "axisColorMode": "text",
2141 "axisLabel": "",
2142 "axisPlacement": "auto",
2143 "barAlignment": 0,
2144 "drawStyle": "line",
2145 "fillOpacity": 10,
2146 "gradientMode": "none",
2147 "hideFrom": {
2148 "legend": false,
2149 "tooltip": false,
2150 "viz": false
2151 },
2152 "insertNulls": false,
2153 "lineInterpolation": "linear",
2154 "lineWidth": 2,
2155 "pointSize": 5,
2156 "scaleDistribution": {
2157 "type": "linear"
2158 },
2159 "showPoints": "never",
2160 "spanNulls": false,
2161 "stacking": {
2162 "group": "A",
2163 "mode": "none"
2164 },
2165 "thresholdsStyle": {
2166 "mode": "off"
2167 }
2168 },
2169 "decimals": 1,
2170 "links": [],
2171 "mappings": [],
2172 "thresholds": {
2173 "mode": "absolute",
2174 "steps": [
2175 {
2176 "color": "green",
2177 "value": null
2178 },
2179 {
2180 "color": "red",
2181 "value": 80
2182 }
2183 ]
2184 },
2185 "unit": "none"
2186 },
2187 "overrides": [
2188 {
2189 "matcher": {
2190 "id": "byName",
2191 "options": "load_5"
2192 },
2193 "properties": [
2194 {
2195 "id": "color",
2196 "value": {
2197 "fixedColor": "#BA43A9",
2198 "mode": "fixed"
2199 }
2200 }
2201 ]
2202 },
2203 {
2204 "matcher": {
2205 "id": "byName",
2206 "options": "avg_query_runtime"
2207 },
2208 "properties": [
2209 {
2210 "id": "unit",
2211 "value": "ms"
2212 }
2213 ]
2214 }
2215 ]
2216 },
2217 "gridPos": {
2218 "h": 6,
2219 "w": 12,
2220 "x": 12,
2221 "y": 14
2222 },
2223 "id": 12,
2224 "interval": "10m",
2225 "options": {
2226 "legend": {
2227 "calcs": [
2228 "mean"
2229 ],
2230 "displayMode": "list",
2231 "placement": "bottom",
2232 "showLegend": true
2233 },
2234 "tooltip": {
2235 "mode": "multi",
2236 "sort": "none"
2237 }
2238 },
2239 "pluginVersion": "10.4.1",
2240 "targets": [
2241 {
2242 "alias": "load_5",
2243 "datasource": {
2244 "type": "grafana-postgresql-datasource",
2245 "uid": "pgwatch-metrics"
2246 },
2247 "format": "time_series",
2248 "group": [],
2249 "groupBy": [
2250 {
2251 "params": [
2252 "$interval"
2253 ],
2254 "type": "time"
2255 },
2256 {
2257 "params": [
2258 "none"
2259 ],
2260 "type": "fill"
2261 }
2262 ],
2263 "hide": false,
2264 "measurement": "cpu_load",
2265 "metricColumn": "none",
2266 "orderByTime": "ASC",
2267 "policy": "default",
2268 "query": "",
2269 "rawQuery": true,
2270 "rawSql": "SELECT\n $__timeGroup(time, $agg_interval),\n avg((data->>'load_5min')::numeric) as \"load_5\"\nFROM\n cpu_load\nWHERE\n $__timeFilter(time)\n AND dbname = '$dbname'\nGROUP BY 1\nORDER BY 1\n",
2271 "refId": "A",
2272 "resultFormat": "time_series",
2273 "select": [
2274 [
2275 {
2276 "params": [
2277 "load_5min"
2278 ],
2279 "type": "field"
2280 },
2281 {
2282 "params": [],
2283 "type": "mean"
2284 }
2285 ]
2286 ],
2287 "tags": [],
2288 "timeColumn": "time",
2289 "where": [
2290 {
2291 "name": "$__timeFilter",
2292 "params": [],
2293 "type": "macro"
2294 }
2295 ]
2296 },
2297 {
2298 "alias": "avg_query_runtime",
2299 "datasource": {
2300 "type": "grafana-postgresql-datasource",
2301 "uid": "pgwatch-metrics"
2302 },
2303 "format": "time_series",
2304 "group": [],
2305 "groupBy": [
2306 {
2307 "params": [
2308 "$interval"
2309 ],
2310 "type": "time"
2311 },
2312 {
2313 "params": [
2314 "null"
2315 ],
2316 "type": "fill"
2317 }
2318 ],
2319 "hide": false,
2320 "measurement": "stat_statements",
2321 "metricColumn": "none",
2322 "orderByTime": "ASC",
2323 "policy": "default",
2324 "rawQuery": true,
2325 "rawSql": "select\n time,\n avg(avg) as \"avg_query_runtime\"\nfrom (\n\nselect\n$__timeGroup(time, $agg_interval),\nqueryid,\navg((tt-tt_lag)::numeric / (c-c_lag))\n\nfrom (\n\n select \n (data->>'total_time')::float8 as tt, lag((data->>'total_time')::float8) over w as tt_lag,\n (data->>'calls')::int8 as c, lag((data->>'calls')::int8) over w as c_lag,\n tag_data->>'queryid' as queryid,\n time\n from stat_statements\n where dbname = '$dbname' and $__timeFilter(time)\n and not tag_data->>'query' like '%$2)::int8 as epoch_ns,%' /*trying to not include queries by pgwatch itself*/\n window w as (partition by tag_data->>'queryid' order by time)\n) x\nwhere c > c_lag and tt >= tt_lag\ngroup by 1, 2\norder by 1, 2\n) y\ngroup by 1\norder by 1",
2326 "refId": "B",
2327 "resultFormat": "time_series",
2328 "select": [
2329 [
2330 {
2331 "params": [
2332 "value"
2333 ],
2334 "type": "field"
2335 },
2336 {
2337 "params": [],
2338 "type": "mean"
2339 }
2340 ]
2341 ],
2342 "tags": [],
2343 "timeColumn": "time",
2344 "where": [
2345 {
2346 "name": "$__timeFilter",
2347 "params": [],
2348 "type": "macro"
2349 }
2350 ]
2351 }
2352 ],
2353 "title": "CPU load + avg. query runtime ($agg_interval avg.)",
2354 "type": "timeseries"
2355 },
2356 {
2357 "datasource": {
2358 "type": "grafana-postgresql-datasource",
2359 "uid": "pgwatch-metrics"
2360 },
2361 "fieldConfig": {
2362 "defaults": {
2363 "color": {
2364 "mode": "palette-classic"
2365 },
2366 "custom": {
2367 "axisBorderShow": false,
2368 "axisCenteredZero": false,
2369 "axisColorMode": "text",
2370 "axisLabel": "",
2371 "axisPlacement": "auto",
2372 "barAlignment": 0,
2373 "drawStyle": "line",
2374 "fillOpacity": 10,
2375 "gradientMode": "none",
2376 "hideFrom": {
2377 "legend": false,
2378 "tooltip": false,
2379 "viz": false
2380 },
2381 "insertNulls": false,
2382 "lineInterpolation": "linear",
2383 "lineWidth": 1,
2384 "pointSize": 5,
2385 "scaleDistribution": {
2386 "log": 10,
2387 "type": "log"
2388 },
2389 "showPoints": "never",
2390 "spanNulls": false,
2391 "stacking": {
2392 "group": "A",
2393 "mode": "none"
2394 },
2395 "thresholdsStyle": {
2396 "mode": "off"
2397 }
2398 },
2399 "links": [],
2400 "mappings": [],
2401 "min": 0,
2402 "thresholds": {
2403 "mode": "absolute",
2404 "steps": [
2405 {
2406 "color": "green",
2407 "value": null
2408 },
2409 {
2410 "color": "red",
2411 "value": 80
2412 }
2413 ]
2414 },
2415 "unit": "short"
2416 },
2417 "overrides": []
2418 },
2419 "gridPos": {
2420 "h": 6,
2421 "w": 12,
2422 "x": 0,
2423 "y": 20
2424 },
2425 "id": 18,
2426 "options": {
2427 "legend": {
2428 "calcs": [
2429 "mean"
2430 ],
2431 "displayMode": "list",
2432 "placement": "bottom",
2433 "showLegend": true
2434 },
2435 "tooltip": {
2436 "mode": "multi",
2437 "sort": "desc"
2438 }
2439 },
2440 "pluginVersion": "10.4.1",
2441 "targets": [
2442 {
2443 "datasource": {
2444 "type": "grafana-postgresql-datasource",
2445 "uid": "pgwatch-metrics"
2446 },
2447 "format": "time_series",
2448 "group": [],
2449 "metricColumn": "none",
2450 "rawQuery": true,
2451 "rawSql": "select\n time,\n sum(seq_scan) as seq_scan,\n sum(idx_scan) as idx_scan\nfrom (\n select\n $__timeGroup(time, $agg_interval),\n table_full_name,\n avg((((scan - scan_lag) * (extract(epoch from '$agg_interval'::interval))) / extract(epoch from time - time_lag))) as seq_scan,\n avg((((idx_scan - idx_scan_lag) * (extract(epoch from '$agg_interval'::interval))) / extract(epoch from time - time_lag))) as idx_scan\n from (\n select \n (data->>'seq_scan')::int8 as scan, lag((data->>'seq_scan')::int8) over w as scan_lag,\n (data->>'idx_scan')::int8 as idx_scan, lag((data->>'idx_scan')::int8) over w as idx_scan_lag,\n time, lag(time) over w as time_lag,\n tag_data->>'table_full_name' as table_full_name\n from table_stats\n where dbname = '$dbname' and $__timeFilter(time)\n and (data->>'table_size_b')::int8 > 10000000\n window w as (partition by tag_data->>'table_full_name' order by time) \n ) x\n where scan >= scan_lag and time > time_lag\n group by 1, 2\n) y\ngroup by 1\norder by 1\n",
2452 "refId": "A",
2453 "select": [
2454 [
2455 {
2456 "params": [
2457 "value"
2458 ],
2459 "type": "column"
2460 }
2461 ]
2462 ],
2463 "timeColumn": "time",
2464 "where": [
2465 {
2466 "name": "$__timeFilter",
2467 "params": [],
2468 "type": "macro"
2469 }
2470 ]
2471 }
2472 ],
2473 "title": "Seq. / Idx. scans ($agg_interval avg. rate., >10MB tables, log. scale)",
2474 "type": "timeseries"
2475 },
2476 {
2477 "datasource": {
2478 "type": "grafana-postgresql-datasource",
2479 "uid": "pgwatch-metrics"
2480 },
2481 "description": "Appears when larger groupings / sortings don't fit into 'work_mem'",
2482 "fieldConfig": {
2483 "defaults": {
2484 "color": {
2485 "mode": "palette-classic"
2486 },
2487 "custom": {
2488 "axisBorderShow": false,
2489 "axisCenteredZero": false,
2490 "axisColorMode": "text",
2491 "axisLabel": "",
2492 "axisPlacement": "auto",
2493 "barAlignment": 0,
2494 "drawStyle": "line",
2495 "fillOpacity": 10,
2496 "gradientMode": "none",
2497 "hideFrom": {
2498 "legend": false,
2499 "tooltip": false,
2500 "viz": false
2501 },
2502 "insertNulls": false,
2503 "lineInterpolation": "linear",
2504 "lineWidth": 1,
2505 "pointSize": 5,
2506 "scaleDistribution": {
2507 "type": "linear"
2508 },
2509 "showPoints": "never",
2510 "spanNulls": false,
2511 "stacking": {
2512 "group": "A",
2513 "mode": "none"
2514 },
2515 "thresholdsStyle": {
2516 "mode": "off"
2517 }
2518 },
2519 "decimals": 0,
2520 "links": [],
2521 "mappings": [],
2522 "min": 0,
2523 "thresholds": {
2524 "mode": "absolute",
2525 "steps": [
2526 {
2527 "color": "green",
2528 "value": null
2529 },
2530 {
2531 "color": "red",
2532 "value": 80
2533 }
2534 ]
2535 },
2536 "unit": "bytes"
2537 },
2538 "overrides": [
2539 {
2540 "matcher": {
2541 "id": "byName",
2542 "options": "Temp bytes"
2543 },
2544 "properties": [
2545 {
2546 "id": "color",
2547 "value": {
2548 "fixedColor": "light-red",
2549 "mode": "fixed"
2550 }
2551 }
2552 ]
2553 },
2554 {
2555 "matcher": {
2556 "id": "byName",
2557 "options": "Temp bytes (1h rate)"
2558 },
2559 "properties": [
2560 {
2561 "id": "color",
2562 "value": {
2563 "fixedColor": "light-red",
2564 "mode": "fixed"
2565 }
2566 }
2567 ]
2568 },
2569 {
2570 "matcher": {
2571 "id": "byName",
2572 "options": "Temp bytes (5m avg)"
2573 },
2574 "properties": [
2575 {
2576 "id": "color",
2577 "value": {
2578 "fixedColor": "light-red",
2579 "mode": "fixed"
2580 }
2581 }
2582 ]
2583 }
2584 ]
2585 },
2586 "gridPos": {
2587 "h": 6,
2588 "w": 12,
2589 "x": 12,
2590 "y": 20
2591 },
2592 "id": 19,
2593 "options": {
2594 "legend": {
2595 "calcs": [
2596 "mean"
2597 ],
2598 "displayMode": "list",
2599 "placement": "bottom",
2600 "showLegend": true
2601 },
2602 "tooltip": {
2603 "mode": "multi",
2604 "sort": "desc"
2605 }
2606 },
2607 "pluginVersion": "10.4.1",
2608 "targets": [
2609 {
2610 "datasource": {
2611 "type": "grafana-postgresql-datasource",
2612 "uid": "pgwatch-metrics"
2613 },
2614 "format": "time_series",
2615 "group": [],
2616 "metricColumn": "none",
2617 "rawQuery": true,
2618 "rawSql": "select\n $__timeGroup(time, $agg_interval),\n avg(((tb-tb_lag)*extract(epoch from '$agg_interval'::interval)) / (etime - lag_etime)) as \"Temp bytes\"\nfrom (\n select \n (data->>'temp_bytes')::int8 as tb, lag((data->>'temp_bytes')::int8) over w as tb_lag,\n (extract(epoch from time))::int8 as etime,\n (lag(extract(epoch from time)) over w)::int8 as lag_etime,\n time\n from db_stats\n where dbname = '$dbname' and $__timeFilter(time)\n window w as (order by time)\n) x\nwhere tb >= tb_lag\ngroup by 1\norder by 1\n",
2619 "refId": "A",
2620 "select": [
2621 [
2622 {
2623 "params": [
2624 "value"
2625 ],
2626 "type": "column"
2627 }
2628 ]
2629 ],
2630 "timeColumn": "time",
2631 "where": [
2632 {
2633 "name": "$__timeFilter",
2634 "params": [],
2635 "type": "macro"
2636 }
2637 ]
2638 }
2639 ],
2640 "title": "Temp bytes ($agg_interval avg.)",
2641 "type": "timeseries"
2642 },
2643 {
2644 "datasource": {
2645 "type": "grafana-postgresql-datasource",
2646 "uid": "pgwatch-metrics"
2647 },
2648 "editable": true,
2649 "error": false,
2650 "gridPos": {
2651 "h": 7,
2652 "w": 12,
2653 "x": 0,
2654 "y": 26
2655 },
2656 "id": 14,
2657 "options": {
2658 "code": {
2659 "language": "plaintext",
2660 "showLineNumbers": false,
2661 "showMiniMap": false
2662 },
2663 "content": "<h2>Brought to you by</h2><div style=\"padding: 25px;\"><a href=\"https://www.cybertec-postgresql.com/en/\"><img src=\"https://www.cybertec-postgresql.com/wp-content/uploads/2025/02/cybertec-logo-white-blue.svg\" alt=\"Cybertec – The PostgreSQL Database Company\"></a></div>",
2664 "mode": "html"
2665 },
2666 "pluginVersion": "10.4.1",
2667 "targets": [
2668 {
2669 "datasource": {
2670 "type": "grafana-postgresql-datasource",
2671 "uid": "pgwatch-metrics"
2672 },
2673 "refId": "A"
2674 }
2675 ],
2676 "transparent": true,
2677 "type": "text"
2678 }
2679 ],
2680 "refresh": false,
2681 "schemaVersion": 39,
2682 "tags": [
2683 "pgwatch"
2684 ],
2685 "templating": {
2686 "list": [
2687 {
2688 "current": {
2689 "isNone": true,
2690 "selected": false,
2691 "text": "None",
2692 "value": ""
2693 },
2694 "datasource": {
2695 "type": "grafana-postgresql-datasource",
2696 "uid": "pgwatch-metrics"
2697 },
2698 "definition": "",
2699 "hide": 0,
2700 "includeAll": false,
2701 "multi": false,
2702 "name": "dbname",
2703 "options": [],
2704 "query": "SELECT DISTINCT dbname FROM admin.all_distinct_dbname_metrics ORDER BY 1;",
2705 "refresh": 1,
2706 "regex": "",
2707 "skipUrlSync": false,
2708 "sort": 0,
2709 "type": "query",
2710 "useTags": false
2711 },
2712 {
2713 "auto": false,
2714 "auto_count": 30,
2715 "auto_min": "10s",
2716 "current": {
2717 "selected": false,
2718 "text": "5m",
2719 "value": "5m"
2720 },
2721 "hide": 0,
2722 "name": "agg_interval",
2723 "options": [
2724 {
2725 "selected": false,
2726 "text": "1s",
2727 "value": "1s"
2728 },
2729 {
2730 "selected": false,
2731 "text": "1m",
2732 "value": "1m"
2733 },
2734 {
2735 "selected": true,
2736 "text": "5m",
2737 "value": "5m"
2738 },
2739 {
2740 "selected": false,
2741 "text": "10m",
2742 "value": "10m"
2743 },
2744 {
2745 "selected": false,
2746 "text": "15m",
2747 "value": "15m"
2748 },
2749 {
2750 "selected": false,
2751 "text": "30m",
2752 "value": "30m"
2753 },
2754 {
2755 "selected": false,
2756 "text": "1h",
2757 "value": "1h"
2758 },
2759 {
2760 "selected": false,
2761 "text": "6h",
2762 "value": "6h"
2763 },
2764 {
2765 "selected": false,
2766 "text": "12h",
2767 "value": "12h"
2768 },
2769 {
2770 "selected": false,
2771 "text": "1d",
2772 "value": "1d"
2773 }
2774 ],
2775 "query": "1s,1m,5m,10m,15m,30m,1h,6h,12h,1d",
2776 "refresh": 2,
2777 "skipUrlSync": false,
2778 "type": "interval"
2779 }
2780 ]
2781 },
2782 "time": {
2783 "from": "now-3h",
2784 "to": "now"
2785 },
2786 "timepicker": {
2787 "refresh_intervals": [
2788 "5s",
2789 "10s",
2790 "30s",
2791 "1m",
2792 "5m",
2793 "15m",
2794 "30m",
2795 "1h",
2796 "2h",
2797 "1d"
2798 ],
2799 "time_options": [
2800 "5m",
2801 "15m",
2802 "1h",
2803 "6h",
2804 "12h",
2805 "24h",
2806 "2d",
2807 "7d",
2808 "30d"
2809 ]
2810 },
2811 "timezone": "browser",
2812 "title": "DB overview",
2813 "uid": "db-overview",
2814 "version": 1,
2815 "weekStart": ""
2816}