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