From 54357bed2ca00be8433202e1e37909bb9945994c Mon Sep 17 00:00:00 2001 From: Carine Dengler Date: Fri, 26 Jul 2024 09:54:38 +0200 Subject: [PATCH] feat: add new dashboards for matrix.epfl.ch (#77) * feat: add new dashboards for matrix.epfl.ch * style: use the dashboards as exported by Grafana, disable linting for them --- .prettierignore | 1 + dashboards.d/matrix_epfl_ch.json | 430 +++++++++++++++++++++++++++++-- 2 files changed, 414 insertions(+), 17 deletions(-) create mode 100644 .prettierignore diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 0000000..aaaa365 --- /dev/null +++ b/.prettierignore @@ -0,0 +1 @@ +dashboards.d diff --git a/dashboards.d/matrix_epfl_ch.json b/dashboards.d/matrix_epfl_ch.json index 7d7ddf8..7ae32bf 100644 --- a/dashboards.d/matrix_epfl_ch.json +++ b/dashboards.d/matrix_epfl_ch.json @@ -15,9 +15,22 @@ "editable": true, "gnetId": null, "graphTooltip": 0, - "id": null, "links": [], "panels": [ + { + "collapsed": false, + "datasource": null, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 0 + }, + "id": 14, + "panels": [], + "title": "Host Stats", + "type": "row" + }, { "aliasColors": {}, "bars": false, @@ -34,7 +47,7 @@ "h": 8, "w": 12, "x": 0, - "y": 0 + "y": 1 }, "hiddenSeries": false, "id": 6, @@ -67,13 +80,13 @@ "exemplar": true, "expr": "100 - ((node_filesystem_avail_bytes{mountpoint=\"/\",fstype!=\"rootfs\"}*100)/node_filesystem_size_bytes{mountpoint=\"/\",fstype!=\"rootfs\"})", "interval": "", - "legendFormat": "", + "legendFormat": "{{device}}", "refId": "A" } ], "thresholds": [ { - "$$hashKey": "object:731", + "$$hashKey": "object:64", "colorMode": "critical", "fill": true, "line": true, @@ -82,7 +95,9 @@ "yaxis": "left" } ], + "timeFrom": null, "timeRegions": [], + "timeShift": null, "title": "Filesystem Usage", "tooltip": { "shared": true, @@ -99,14 +114,113 @@ }, "yaxes": [ { + "$$hashKey": "object:104", + "format": "short", + "label": "%", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "$$hashKey": "object:105", "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fieldConfig": { + "defaults": {}, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 8, + "w": 12, + "x": 12, + "y": 1 + }, + "hiddenSeries": false, + "id": 8, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "nullPointMode": "null", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "7.5.12", + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "100 - ((node_memory_MemAvailable_bytes*100)/node_memory_MemTotal_bytes)", + "hide": false, + "interval": "", + "legendFormat": "{{instance}}", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "RAM Usage", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "$$hashKey": "object:166", + "format": "short", + "label": "%", + "logBase": 1, + "max": null, + "min": null, + "show": true }, { + "$$hashKey": "object:167", "format": "short", "label": null, "logBase": 1, @@ -136,8 +250,8 @@ "gridPos": { "h": 8, "w": 12, - "x": 12, - "y": 0 + "x": 0, + "y": 9 }, "hiddenSeries": false, "id": 4, @@ -168,24 +282,26 @@ "targets": [ { "exemplar": true, - "expr": "node_load5", + "expr": "100 - (avg by (instance) (rate(node_cpu_seconds_total{mode=\"idle\"}[1m])) * 100)", "interval": "", - "legendFormat": "", + "legendFormat": "{{instance}}", "refId": "A" } ], "thresholds": [ { - "$$hashKey": "object:579", + "$$hashKey": "object:291", "colorMode": "critical", "fill": true, "line": true, "op": "gt", - "value": 1, + "value": 80, "yaxis": "left" } ], + "timeFrom": null, "timeRegions": [], + "timeShift": null, "title": "Load Average", "tooltip": { "shared": true, @@ -202,14 +318,16 @@ }, "yaxes": [ { + "$$hashKey": "object:273", "format": "short", - "label": null, + "label": "%", "logBase": 1, "max": null, "min": null, "show": true }, { + "$$hashKey": "object:274", "format": "short", "label": null, "logBase": 1, @@ -223,6 +341,20 @@ "alignLevel": null } }, + { + "collapsed": false, + "datasource": null, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 17 + }, + "id": 16, + "panels": [], + "title": "Matrix Stats", + "type": "row" + }, { "aliasColors": {}, "bars": false, @@ -240,7 +372,7 @@ "h": 9, "w": 12, "x": 0, - "y": 8 + "y": 18 }, "hiddenSeries": false, "id": 2, @@ -278,7 +410,7 @@ "instant": false, "interval": "", "intervalFactor": 1, - "legendFormat": "", + "legendFormat": "{{instance}}", "refId": "A" } ], @@ -302,7 +434,271 @@ }, "yaxes": [ { - "$$hashKey": "object:96", + "$$hashKey": "object:463", + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "$$hashKey": "object:464", + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "cards": { + "cardPadding": null, + "cardRound": null + }, + "color": { + "cardColor": "#b4ff00", + "colorScale": "sqrt", + "colorScheme": "interpolateInferno", + "exponent": 0.5, + "max": null, + "min": null, + "mode": "spectrum" + }, + "dataFormat": "tsbuckets", + "datasource": "Prometheus", + "fieldConfig": { + "defaults": {}, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 12, + "y": 18 + }, + "heatmap": {}, + "hideZeroBuckets": true, + "highlightCards": true, + "id": 18, + "legend": { + "show": true + }, + "pluginVersion": "7.5.12", + "reverseYBuckets": false, + "targets": [ + { + "exemplar": true, + "expr": "sum(rate(synapse_http_server_response_time_seconds_bucket{servlet=\"RoomSendEventRestServlet\",code=~\"2..\"}[10m])) by (le)", + "format": "heatmap", + "interval": "", + "legendFormat": "{{le}}", + "refId": "A" + } + ], + "title": "Message Event Send Time (in seconds)", + "tooltip": { + "show": true, + "showHistogram": false + }, + "type": "heatmap", + "xAxis": { + "show": true + }, + "xBucketNumber": null, + "xBucketSize": null, + "yAxis": { + "decimals": null, + "format": "short", + "logBase": 1, + "max": null, + "min": null, + "show": true, + "splitFactor": null + }, + "yBucketBound": "auto", + "yBucketNumber": null, + "yBucketSize": null + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fieldConfig": { + "defaults": {}, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 8, + "w": 12, + "x": 12, + "y": 26 + }, + "hiddenSeries": false, + "id": 20, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "nullPointMode": "null", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "7.5.12", + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "sum(rate(synapse_federation_client_sent_transactions_total[1m]))", + "interval": "", + "legendFormat": "Successful transactions rate", + "refId": "A" + }, + { + "exemplar": true, + "expr": "sum(rate(synapse_util_metrics_block_count_total{block_name=\"_send_new_transaction\"}[1m]) - ignoring (block_name) rate(synapse_federation_client_sent_transactions_total[1m]))", + "hide": false, + "interval": "", + "legendFormat": "Failed transactions rate", + "refId": "B" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Outgoing Federation Transaction Rate", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fieldConfig": { + "defaults": {}, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 27 + }, + "hiddenSeries": false, + "id": 22, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "nullPointMode": "null", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "7.5.12", + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "rate(synapse_http_server_requests_received_total{method!=\"OPTIONS\"}[5m]) and topk(10,synapse_http_server_requests_received_total{method!=\"OPTIONS\"})", + "interval": "", + "legendFormat": "{{method}} {{servlet}}", + "refId": "A" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Top 10 HTTP Requests (5 minute range)", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { "format": "short", "label": null, "logBase": 1, @@ -311,7 +707,6 @@ "show": true }, { - "$$hashKey": "object:97", "format": "short", "label": null, "logBase": 1, @@ -326,6 +721,7 @@ } } ], + "refresh": false, "schemaVersion": 27, "style": "dark", "tags": [], @@ -340,5 +736,5 @@ "timezone": "", "title": "matrix.epfl.ch", "uid": "7aM4y6_Sk", - "version": 0 -} + "version": 4 +} \ No newline at end of file