From c87920c1cf1747db5a6fd993d2a52168cd2b530d Mon Sep 17 00:00:00 2001 From: Andrew Azores Date: Tue, 2 Sep 2025 12:29:52 -0400 Subject: [PATCH 01/15] update model, add Recording Information panel --- dashboards/main.dashboard.json | 122 ++++++++++++++++----------------- 1 file changed, 61 insertions(+), 61 deletions(-) diff --git a/dashboards/main.dashboard.json b/dashboards/main.dashboard.json index ce76d11..aaebfe7 100644 --- a/dashboards/main.dashboard.json +++ b/dashboards/main.dashboard.json @@ -20,7 +20,21 @@ "graphTooltip": 0, "id": 1, "links": [], + "liveNow": false, "panels": [ + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 0 + }, + "id": 30, + "panels": [], + "title": "Recording Information", + "type": "row" + }, { "fieldConfig": { "defaults": { @@ -61,7 +75,7 @@ "h": 3, "w": 3, "x": 0, - "y": 0 + "y": 1 }, "id": 2, "maxDataPoints": 100, @@ -82,7 +96,7 @@ "textMode": "auto", "wideLayout": true }, - "pluginVersion": "10.4.3", + "pluginVersion": "10.2.6", "targets": [ { "columns": [], @@ -146,7 +160,7 @@ "h": 3, "w": 9, "x": 3, - "y": 0 + "y": 1 }, "id": 3, "maxDataPoints": 100, @@ -167,7 +181,7 @@ "textMode": "auto", "wideLayout": true }, - "pluginVersion": "10.4.3", + "pluginVersion": "10.2.6", "targets": [ { "columns": [], @@ -198,7 +212,7 @@ "h": 1, "w": 24, "x": 0, - "y": 3 + "y": 4 }, "id": 4, "panels": [], @@ -244,7 +258,7 @@ "h": 3, "w": 3, "x": 0, - "y": 4 + "y": 5 }, "id": 5, "maxDataPoints": 100, @@ -265,7 +279,7 @@ "textMode": "auto", "wideLayout": true }, - "pluginVersion": "10.4.3", + "pluginVersion": "10.2.6", "targets": [ { "columns": [ @@ -335,7 +349,7 @@ "h": 3, "w": 3, "x": 3, - "y": 4 + "y": 5 }, "id": 6, "maxDataPoints": 100, @@ -356,7 +370,7 @@ "textMode": "auto", "wideLayout": true }, - "pluginVersion": "10.4.3", + "pluginVersion": "10.2.6", "targets": [ { "columns": [ @@ -426,7 +440,7 @@ "h": 3, "w": 3, "x": 6, - "y": 4 + "y": 5 }, "id": 7, "maxDataPoints": 100, @@ -447,7 +461,7 @@ "textMode": "auto", "wideLayout": true }, - "pluginVersion": "10.4.3", + "pluginVersion": "10.2.6", "targets": [ { "columns": [ @@ -538,7 +552,7 @@ "h": 6, "w": 13, "x": 0, - "y": 7 + "y": 8 }, "id": 8, "options": { @@ -713,7 +727,7 @@ "h": 6, "w": 13, "x": 0, - "y": 13 + "y": 14 }, "id": 9, "maxDataPoints": 100, @@ -776,7 +790,7 @@ "h": 1, "w": 24, "x": 0, - "y": 19 + "y": 20 }, "id": 10, "panels": [ @@ -823,8 +837,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -840,7 +853,7 @@ "h": 6, "w": 13, "x": 0, - "y": 20 + "y": 28 }, "id": 11, "options": { @@ -931,7 +944,7 @@ "h": 1, "w": 24, "x": 0, - "y": 20 + "y": 21 }, "id": 12, "panels": [ @@ -978,8 +991,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -995,7 +1007,7 @@ "h": 6, "w": 13, "x": 0, - "y": 21 + "y": 29 }, "id": 13, "options": { @@ -1086,7 +1098,7 @@ "h": 1, "w": 24, "x": 0, - "y": 21 + "y": 22 }, "id": 14, "panels": [ @@ -1133,8 +1145,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -1150,7 +1161,7 @@ "h": 6, "w": 10, "x": 0, - "y": 22 + "y": 30 }, "id": 15, "options": { @@ -1334,8 +1345,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -1351,7 +1361,7 @@ "h": 6, "w": 10, "x": 10, - "y": 22 + "y": 30 }, "id": 16, "options": { @@ -1413,7 +1423,7 @@ "h": 1, "w": 24, "x": 0, - "y": 22 + "y": 23 }, "id": 17, "panels": [ @@ -1460,8 +1470,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -1477,7 +1486,7 @@ "h": 6, "w": 10, "x": 0, - "y": 23 + "y": 31 }, "id": 18, "options": { @@ -1575,8 +1584,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -1592,7 +1600,7 @@ "h": 12, "w": 10, "x": 10, - "y": 23 + "y": 31 }, "id": 19, "links": [ @@ -1684,8 +1692,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -1701,7 +1708,7 @@ "h": 6, "w": 10, "x": 0, - "y": 29 + "y": 37 }, "id": 20, "options": { @@ -1798,8 +1805,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -1815,7 +1821,7 @@ "h": 6, "w": 10, "x": 0, - "y": 35 + "y": 43 }, "id": 21, "options": { @@ -2059,8 +2065,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -2076,7 +2081,7 @@ "h": 6, "w": 10, "x": 10, - "y": 35 + "y": 43 }, "id": 22, "options": { @@ -2167,7 +2172,7 @@ "h": 1, "w": 24, "x": 0, - "y": 23 + "y": 24 }, "id": 23, "panels": [ @@ -2183,8 +2188,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -2200,7 +2204,7 @@ "h": 5, "w": 3, "x": 0, - "y": 24 + "y": 32 }, "id": 24, "options": { @@ -2299,8 +2303,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -2316,7 +2319,7 @@ "h": 5, "w": 10, "x": 3, - "y": 24 + "y": 32 }, "id": 25, "options": { @@ -2414,8 +2417,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -2431,7 +2433,7 @@ "h": 6, "w": 13, "x": 0, - "y": 29 + "y": 37 }, "id": 26, "options": { @@ -2612,7 +2614,7 @@ "h": 1, "w": 24, "x": 0, - "y": 24 + "y": 25 }, "id": 27, "panels": [ @@ -2659,8 +2661,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -2676,7 +2677,7 @@ "h": 6, "w": 10, "x": 0, - "y": 25 + "y": 33 }, "id": 28, "options": { @@ -2800,8 +2801,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -2817,7 +2817,7 @@ "h": 6, "w": 10, "x": 10, - "y": 25 + "y": 33 }, "id": 29, "options": { From 2fc960b64ae30f570e5df85c8858f3110df81c4a Mon Sep 17 00:00:00 2001 From: Andrew Azores Date: Tue, 2 Sep 2025 12:34:08 -0400 Subject: [PATCH 02/15] update model, set Thread Context Switch Rate to hertz instead of rothz --- dashboards/main.dashboard.json | 635 +++++++++++++++++---------------- 1 file changed, 327 insertions(+), 308 deletions(-) diff --git a/dashboards/main.dashboard.json b/dashboards/main.dashboard.json index aaebfe7..9eb1434 100644 --- a/dashboards/main.dashboard.json +++ b/dashboards/main.dashboard.json @@ -837,7 +837,8 @@ "mode": "absolute", "steps": [ { - "color": "green" + "color": "green", + "value": null }, { "color": "red", @@ -853,7 +854,7 @@ "h": 6, "w": 13, "x": 0, - "y": 28 + "y": 21 }, "id": 11, "options": { @@ -1007,7 +1008,7 @@ "h": 6, "w": 13, "x": 0, - "y": 29 + "y": 37 }, "id": 13, "options": { @@ -1093,7 +1094,7 @@ "type": "row" }, { - "collapsed": true, + "collapsed": false, "gridPos": { "h": 1, "w": 24, @@ -1101,321 +1102,326 @@ "y": 22 }, "id": 14, - "panels": [ - { - "fieldConfig": { - "defaults": { - "color": { - "mode": "palette-classic" - }, - "custom": { - "axisBorderShow": false, - "axisCenteredZero": false, - "axisColorMode": "text", - "axisLabel": "", - "axisPlacement": "auto", - "barAlignment": 0, - "drawStyle": "line", - "fillOpacity": 10, - "gradientMode": "none", - "hideFrom": { - "legend": false, - "tooltip": false, - "viz": false - }, - "insertNulls": false, - "lineInterpolation": "linear", - "lineWidth": 1, - "pointSize": 5, - "scaleDistribution": { - "type": "linear" - }, - "showPoints": "never", - "spanNulls": false, - "stacking": { - "group": "A", - "mode": "none" - }, - "thresholdsStyle": { - "mode": "off" - } - }, - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green" - }, - { - "color": "red", - "value": 80 - } - ] - }, - "unit": "short" - }, - "overrides": [] - }, - "gridPos": { - "h": 6, - "w": 10, - "x": 0, - "y": 30 + "panels": [], + "title": "Threads", + "type": "row" + }, + { + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" }, - "id": 15, - "options": { - "legend": { - "calcs": [], - "displayMode": "list", - "placement": "bottom", - "showLegend": true + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false }, - "tooltip": { - "mode": "multi", - "sort": "none" + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" } }, - "pluginVersion": "10.4.3", - "targets": [ - { - "columns": [ - { - "selector": "0", - "text": "jdk.JavaThreadStatistics.accumulatedCount", - "type": "number" - }, - { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" - } - ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "refId": "A", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.JavaThreadStatistics.accumulatedCount", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"A\", \"target\": \"jdk.JavaThreadStatistics.accumulatedCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 } - }, + ] + }, + "unit": "short" + }, + "overrides": [] + }, + "gridPos": { + "h": 6, + "w": 10, + "x": 0, + "y": 23 + }, + "id": 15, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "pluginVersion": "10.4.3", + "targets": [ + { + "columns": [ { - "columns": [ - { - "selector": "0", - "text": "jdk.JavaThreadStatistics.activeCount", - "type": "number" - }, - { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" - } - ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "refId": "B", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.JavaThreadStatistics.activeCount", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"B\", \"target\": \"jdk.JavaThreadStatistics.activeCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" - } + "selector": "0", + "text": "jdk.JavaThreadStatistics.accumulatedCount", + "type": "number" }, { - "columns": [ - { - "selector": "0", - "text": "jdk.JavaThreadStatistics.daemonCount", - "type": "number" - }, - { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" - } - ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "refId": "C", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.JavaThreadStatistics.daemonCount", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"C\", \"target\": \"jdk.JavaThreadStatistics.daemonCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" - } + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "A", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.JavaThreadStatistics.accumulatedCount", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"A\", \"target\": \"jdk.JavaThreadStatistics.accumulatedCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } + }, + { + "columns": [ + { + "selector": "0", + "text": "jdk.JavaThreadStatistics.activeCount", + "type": "number" }, { - "columns": [ - { - "selector": "0", - "text": "jdk.JavaThreadStatistics.peakCount", - "type": "number" - }, - { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" - } - ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "refId": "D", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.JavaThreadStatistics.peakCount", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"D\", \"target\": \"jdk.JavaThreadStatistics.peakCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" - } + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "B", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.JavaThreadStatistics.activeCount", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"B\", \"target\": \"jdk.JavaThreadStatistics.activeCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } + }, + { + "columns": [ + { + "selector": "0", + "text": "jdk.JavaThreadStatistics.daemonCount", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" } ], - "title": "Java Thread Statistics", - "type": "timeseries" + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "C", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.JavaThreadStatistics.daemonCount", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"C\", \"target\": \"jdk.JavaThreadStatistics.daemonCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } }, { - "fieldConfig": { - "defaults": { - "color": { - "mode": "palette-classic" - }, - "custom": { - "axisBorderShow": false, - "axisCenteredZero": false, - "axisColorMode": "text", - "axisLabel": "", - "axisPlacement": "auto", - "barAlignment": 0, - "drawStyle": "line", - "fillOpacity": 10, - "gradientMode": "none", - "hideFrom": { - "legend": false, - "tooltip": false, - "viz": false - }, - "insertNulls": false, - "lineInterpolation": "linear", - "lineWidth": 1, - "pointSize": 5, - "scaleDistribution": { - "type": "linear" - }, - "showPoints": "never", - "spanNulls": false, - "stacking": { - "group": "A", - "mode": "none" - }, - "thresholdsStyle": { - "mode": "off" - } - }, - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green" - }, - { - "color": "red", - "value": 80 - } - ] - }, - "unit": "rothz" + "columns": [ + { + "selector": "0", + "text": "jdk.JavaThreadStatistics.peakCount", + "type": "number" }, - "overrides": [] - }, - "gridPos": { - "h": 6, - "w": 10, - "x": 10, - "y": 30 + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "D", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.JavaThreadStatistics.peakCount", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"D\", \"target\": \"jdk.JavaThreadStatistics.peakCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } + } + ], + "title": "Java Thread Statistics", + "type": "timeseries" + }, + { + "datasource": { + "type": "yesoreyeram-infinity-datasource", + "uid": "PD4BE12CA5EBC7EA7" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" }, - "id": 16, - "options": { - "legend": { - "calcs": [], - "displayMode": "list", - "placement": "bottom", - "showLegend": true + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false }, - "tooltip": { - "mode": "multi", - "sort": "none" + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" } }, - "pluginVersion": "10.4.3", - "targets": [ - { - "columns": [ - { - "selector": "0", - "text": "jdk.ThreadContextSwitchRate.switchRate", - "type": "number" - }, - { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" - } - ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "rawQuery": true, - "refId": "A", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.ThreadContextSwitchRate.switchRate", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"A\", \"target\": \"jdk.ThreadContextSwitchRate.switchRate\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 } + ] + }, + "unit": "hertz" + }, + "overrides": [] + }, + "gridPos": { + "h": 6, + "w": 10, + "x": 10, + "y": 23 + }, + "id": 16, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "pluginVersion": "10.4.3", + "targets": [ + { + "columns": [ + { + "selector": "0", + "text": "jdk.ThreadContextSwitchRate.switchRate", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" } ], - "title": "Thread Context Switch Rate", - "type": "timeseries" + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "rawQuery": true, + "refId": "A", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.ThreadContextSwitchRate.switchRate", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"A\", \"target\": \"jdk.ThreadContextSwitchRate.switchRate\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } } ], - "title": "Threads", - "type": "row" + "title": "Thread Context Switch Rate", + "type": "timeseries" }, { "collapsed": true, @@ -1423,7 +1429,7 @@ "h": 1, "w": 24, "x": 0, - "y": 23 + "y": 29 }, "id": 17, "panels": [ @@ -1486,7 +1492,7 @@ "h": 6, "w": 10, "x": 0, - "y": 31 + "y": 39 }, "id": 18, "options": { @@ -1600,7 +1606,7 @@ "h": 12, "w": 10, "x": 10, - "y": 31 + "y": 39 }, "id": 19, "links": [ @@ -1708,7 +1714,7 @@ "h": 6, "w": 10, "x": 0, - "y": 37 + "y": 45 }, "id": 20, "options": { @@ -1821,7 +1827,7 @@ "h": 6, "w": 10, "x": 0, - "y": 43 + "y": 51 }, "id": 21, "options": { @@ -2081,7 +2087,7 @@ "h": 6, "w": 10, "x": 10, - "y": 43 + "y": 51 }, "id": 22, "options": { @@ -2172,7 +2178,7 @@ "h": 1, "w": 24, "x": 0, - "y": 24 + "y": 30 }, "id": 23, "panels": [ @@ -2204,7 +2210,7 @@ "h": 5, "w": 3, "x": 0, - "y": 32 + "y": 40 }, "id": 24, "options": { @@ -2319,7 +2325,7 @@ "h": 5, "w": 10, "x": 3, - "y": 32 + "y": 40 }, "id": 25, "options": { @@ -2433,7 +2439,7 @@ "h": 6, "w": 13, "x": 0, - "y": 37 + "y": 45 }, "id": 26, "options": { @@ -2614,7 +2620,7 @@ "h": 1, "w": 24, "x": 0, - "y": 25 + "y": 31 }, "id": 27, "panels": [ @@ -2677,7 +2683,7 @@ "h": 6, "w": 10, "x": 0, - "y": 33 + "y": 41 }, "id": 28, "options": { @@ -2817,7 +2823,7 @@ "h": 6, "w": 10, "x": 10, - "y": 33 + "y": 41 }, "id": 29, "options": { @@ -2871,6 +2877,19 @@ ], "title": "Others", "type": "row" + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 32 + }, + "id": 31, + "panels": [], + "title": "Frameworks", + "type": "row" } ], "refresh": "", From 26c94e49888240cc95a168b78a680d92b871b2aa Mon Sep 17 00:00:00 2001 From: Andrew Azores Date: Tue, 2 Sep 2025 12:39:13 -0400 Subject: [PATCH 03/15] add Frameworks > Quarkus REST panel --- dashboards/main.dashboard.json | 943 +++++++++++++++++++-------------- 1 file changed, 540 insertions(+), 403 deletions(-) diff --git a/dashboards/main.dashboard.json b/dashboards/main.dashboard.json index 9eb1434..16eeb69 100644 --- a/dashboards/main.dashboard.json +++ b/dashboards/main.dashboard.json @@ -2173,7 +2173,7 @@ "type": "row" }, { - "collapsed": true, + "collapsed": false, "gridPos": { "h": 1, "w": 24, @@ -2181,438 +2181,440 @@ "y": 30 }, "id": 23, - "panels": [ - { - "fieldConfig": { - "defaults": { - "color": { - "fixedColor": "text", - "mode": "fixed" - }, - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green" - }, - { - "color": "red", - "value": 80 - } - ] - }, - "unit": "ms" - }, - "overrides": [] - }, - "gridPos": { - "h": 5, - "w": 3, - "x": 0, - "y": 40 - }, - "id": 24, - "options": { - "colorMode": "value", - "graphMode": "none", - "justifyMode": "auto", - "orientation": "auto", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - }, - "showPercentChange": false, - "text": {}, - "textMode": "auto", - "wideLayout": true + "panels": [], + "title": "Compiler", + "type": "row" + }, + { + "fieldConfig": { + "defaults": { + "color": { + "fixedColor": "text", + "mode": "fixed" }, - "pluginVersion": "10.4.3", - "targets": [ - { - "columns": [ - { - "selector": "0", - "text": "jdk.CompilerStatistics.peakTimeSpent", - "type": "number" - }, - { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" - } - ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "refId": "A", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.CompilerStatistics.peakTimeSpent", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"B\", \"target\": \"jdk.CompilerStatistics.peakTimeSpent\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 } - } + ] + }, + "unit": "ms" + }, + "overrides": [] + }, + "gridPos": { + "h": 5, + "w": 3, + "x": 0, + "y": 31 + }, + "id": 24, + "options": { + "colorMode": "value", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" ], - "title": "Compiler Peak Time", - "type": "stat" + "fields": "", + "values": false }, + "showPercentChange": false, + "text": {}, + "textMode": "auto", + "wideLayout": true + }, + "pluginVersion": "10.2.6", + "targets": [ { - "fieldConfig": { - "defaults": { - "color": { - "mode": "palette-classic" - }, - "custom": { - "axisBorderShow": false, - "axisCenteredZero": false, - "axisColorMode": "text", - "axisLabel": "", - "axisPlacement": "auto", - "barAlignment": 0, - "drawStyle": "line", - "fillOpacity": 10, - "gradientMode": "none", - "hideFrom": { - "legend": false, - "tooltip": false, - "viz": false - }, - "insertNulls": false, - "lineInterpolation": "linear", - "lineWidth": 1, - "pointSize": 5, - "scaleDistribution": { - "type": "linear" - }, - "showPoints": "never", - "spanNulls": false, - "stacking": { - "group": "A", - "mode": "none" - }, - "thresholdsStyle": { - "mode": "off" - } - }, - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green" - }, - { - "color": "red", - "value": 80 - } - ] - }, - "unit": "ms" + "columns": [ + { + "selector": "0", + "text": "jdk.CompilerStatistics.peakTimeSpent", + "type": "number" }, - "overrides": [] - }, - "gridPos": { - "h": 5, - "w": 10, - "x": 3, - "y": 40 + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "A", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.CompilerStatistics.peakTimeSpent", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"B\", \"target\": \"jdk.CompilerStatistics.peakTimeSpent\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } + } + ], + "title": "Compiler Peak Time", + "type": "stat" + }, + { + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" }, - "id": 25, - "options": { - "legend": { - "calcs": [ - "mean", - "max", - "min" - ], - "displayMode": "list", - "placement": "bottom", - "showLegend": true + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false }, - "tooltip": { - "mode": "multi", - "sort": "none" + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" } }, - "pluginVersion": "10.4.3", - "targets": [ - { - "columns": [ - { - "selector": "0", - "text": "jdk.CompilerStatistics.totalTimeSpent", - "type": "number" - }, - { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" - } - ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "refId": "A", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.CompilerStatistics.totalTimeSpent", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"A\", \"target\": \"jdk.CompilerStatistics.totalTimeSpent\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 } - } + ] + }, + "unit": "ms" + }, + "overrides": [] + }, + "gridPos": { + "h": 5, + "w": 10, + "x": 3, + "y": 31 + }, + "id": 25, + "options": { + "legend": { + "calcs": [ + "mean", + "max", + "min" ], - "title": "Compiler: Total Time Spent", - "type": "timeseries" + "displayMode": "list", + "placement": "bottom", + "showLegend": true }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "pluginVersion": "10.4.3", + "targets": [ { - "fieldConfig": { - "defaults": { - "color": { - "mode": "palette-classic" - }, - "custom": { - "axisBorderShow": false, - "axisCenteredZero": false, - "axisColorMode": "text", - "axisLabel": "", - "axisPlacement": "auto", - "barAlignment": 0, - "drawStyle": "line", - "fillOpacity": 10, - "gradientMode": "none", - "hideFrom": { - "legend": false, - "tooltip": false, - "viz": false - }, - "insertNulls": false, - "lineInterpolation": "linear", - "lineWidth": 1, - "pointSize": 5, - "scaleDistribution": { - "type": "linear" - }, - "showPoints": "never", - "spanNulls": false, - "stacking": { - "group": "A", - "mode": "none" - }, - "thresholdsStyle": { - "mode": "off" - } - }, - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green" - }, - { - "color": "red", - "value": 80 - } - ] - }, - "unit": "short" + "columns": [ + { + "selector": "0", + "text": "jdk.CompilerStatistics.totalTimeSpent", + "type": "number" }, - "overrides": [] - }, - "gridPos": { - "h": 6, - "w": 13, - "x": 0, - "y": 45 + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "A", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.CompilerStatistics.totalTimeSpent", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"A\", \"target\": \"jdk.CompilerStatistics.totalTimeSpent\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } + } + ], + "title": "Compiler: Total Time Spent", + "type": "timeseries" + }, + { + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" }, - "id": 26, - "options": { - "legend": { - "calcs": [], - "displayMode": "list", - "placement": "bottom", - "showLegend": true + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false }, - "tooltip": { - "mode": "multi", - "sort": "none" + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" } }, - "pluginVersion": "10.4.3", - "targets": [ - { - "columns": [ - { - "selector": "0", - "text": "jdk.CompilerStatistics.compileCount", - "type": "number" - }, - { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" - } - ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "refId": "A", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.CompilerStatistics.compileCount", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"A\", \"target\": \"jdk.CompilerStatistics.compileCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 } + ] + }, + "unit": "short" + }, + "overrides": [] + }, + "gridPos": { + "h": 6, + "w": 13, + "x": 0, + "y": 36 + }, + "id": 26, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "pluginVersion": "10.4.3", + "targets": [ + { + "columns": [ + { + "selector": "0", + "text": "jdk.CompilerStatistics.compileCount", + "type": "number" }, { - "columns": [ - { - "selector": "0", - "text": "jdk.CompilerStatistics.bailoutCount", - "type": "number" - }, - { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" - } - ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "refId": "B", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.CompilerStatistics.bailoutCount", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"B\", \"target\": \"jdk.CompilerStatistics.bailoutCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" - } + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "A", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.CompilerStatistics.compileCount", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"A\", \"target\": \"jdk.CompilerStatistics.compileCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } + }, + { + "columns": [ + { + "selector": "0", + "text": "jdk.CompilerStatistics.bailoutCount", + "type": "number" }, { - "columns": [ - { - "selector": "0", - "text": "jdk.CompilerStatistics.invalidatedCount", - "type": "number" - }, - { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" - } - ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "refId": "C", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.CompilerStatistics.invalidatedCount", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"C\", \"target\": \"jdk.CompilerStatistics.invalidatedCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" - } + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "B", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.CompilerStatistics.bailoutCount", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"B\", \"target\": \"jdk.CompilerStatistics.bailoutCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } + }, + { + "columns": [ + { + "selector": "0", + "text": "jdk.CompilerStatistics.invalidatedCount", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "C", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.CompilerStatistics.invalidatedCount", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"C\", \"target\": \"jdk.CompilerStatistics.invalidatedCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } + }, + { + "columns": [ + { + "selector": "0", + "text": "jdk.CompilerStatistics.osrCompileCount", + "type": "number" }, { - "columns": [ - { - "selector": "0", - "text": "jdk.CompilerStatistics.osrCompileCount", - "type": "number" - }, - { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" - } - ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "refId": "D", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.CompilerStatistics.osrCompileCount", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"D\", \"target\": \"jdk.CompilerStatistics.osrCompileCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" - } + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "D", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.CompilerStatistics.osrCompileCount", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"D\", \"target\": \"jdk.CompilerStatistics.osrCompileCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } + }, + { + "columns": [ + { + "selector": "0", + "text": "jdk.CompilerStatistics.standardCompileCount", + "type": "number" }, { - "columns": [ - { - "selector": "0", - "text": "jdk.CompilerStatistics.standardCompileCount", - "type": "number" - }, - { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" - } - ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "refId": "E", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.CompilerStatistics.standardCompileCount", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"E\", \"target\": \"jdk.CompilerStatistics.standardCompileCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" - } + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" } ], - "title": "Compiler Statistics", - "type": "timeseries" + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "E", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.CompilerStatistics.standardCompileCount", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"E\", \"target\": \"jdk.CompilerStatistics.standardCompileCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } } ], - "title": "Compiler", - "type": "row" + "title": "Compiler Statistics", + "type": "timeseries" }, { "collapsed": true, @@ -2620,7 +2622,7 @@ "h": 1, "w": 24, "x": 0, - "y": 31 + "y": 42 }, "id": 27, "panels": [ @@ -2884,12 +2886,147 @@ "h": 1, "w": 24, "x": 0, - "y": 32 + "y": 43 }, "id": 31, "panels": [], "title": "Frameworks", "type": "row" + }, + { + "datasource": { + "type": "yesoreyeram-infinity-datasource", + "uid": "PD4BE12CA5EBC7EA7" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "timeticks" + }, + "overrides": [] + }, + "gridPos": { + "h": 5, + "w": 10, + "x": 0, + "y": 44 + }, + "id": 32, + "options": { + "legend": { + "calcs": [ + "mean", + "max", + "min" + ], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "pluginVersion": "10.4.3", + "targets": [ + { + "columns": [ + { + "selector": "0", + "text": "quarkus.Rest.duration", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "A", + "root_selector": "datapoints", + "source": "url", + "target": "quarkus.Rest.duration", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"A\", \"target\": \"quarkus.Rest.duration\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } + } + ], + "title": "Quarkus REST", + "transformations": [ + { + "id": "calculateField", + "options": { + "binary": { + "left": "quarkus.Rest.duration", + "operator": "/", + "right": "10" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + }, + "replaceFields": true + } + } + ], + "type": "timeseries" } ], "refresh": "", From 051873570b3ac1ca0a6f38c5693c1e290caec05a Mon Sep 17 00:00:00 2001 From: Andrew Azores Date: Tue, 2 Sep 2025 12:46:32 -0400 Subject: [PATCH 04/15] correct --- dashboards/main.dashboard.json | 1766 ++++++++++++++++---------------- 1 file changed, 884 insertions(+), 882 deletions(-) diff --git a/dashboards/main.dashboard.json b/dashboards/main.dashboard.json index 16eeb69..db3f3ac 100644 --- a/dashboards/main.dashboard.json +++ b/dashboards/main.dashboard.json @@ -837,8 +837,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -1094,7 +1093,7 @@ "type": "row" }, { - "collapsed": false, + "collapsed": true, "gridPos": { "h": 1, "w": 24, @@ -1102,338 +1101,213 @@ "y": 22 }, "id": 14, - "panels": [], - "title": "Threads", - "type": "row" - }, - { - "fieldConfig": { - "defaults": { - "color": { - "mode": "palette-classic" - }, - "custom": { - "axisBorderShow": false, - "axisCenteredZero": false, - "axisColorMode": "text", - "axisLabel": "", - "axisPlacement": "auto", - "barAlignment": 0, - "drawStyle": "line", - "fillOpacity": 10, - "gradientMode": "none", - "hideFrom": { - "legend": false, - "tooltip": false, - "viz": false - }, - "insertNulls": false, - "lineInterpolation": "linear", - "lineWidth": 1, - "pointSize": 5, - "scaleDistribution": { - "type": "linear" - }, - "showPoints": "never", - "spanNulls": false, - "stacking": { - "group": "A", - "mode": "none" + "panels": [ + { + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" }, - "thresholdsStyle": { - "mode": "off" - } + "overrides": [] }, - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "red", - "value": 80 - } - ] + "gridPos": { + "h": 6, + "w": 10, + "x": 0, + "y": 23 }, - "unit": "short" - }, - "overrides": [] - }, - "gridPos": { - "h": 6, - "w": 10, - "x": 0, - "y": 23 - }, - "id": 15, - "options": { - "legend": { - "calcs": [], - "displayMode": "list", - "placement": "bottom", - "showLegend": true - }, - "tooltip": { - "mode": "multi", - "sort": "none" - } - }, - "pluginVersion": "10.4.3", - "targets": [ - { - "columns": [ - { - "selector": "0", - "text": "jdk.JavaThreadStatistics.accumulatedCount", - "type": "number" + "id": 15, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true }, - { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" + "tooltip": { + "mode": "multi", + "sort": "none" } - ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "refId": "A", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.JavaThreadStatistics.accumulatedCount", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"A\", \"target\": \"jdk.JavaThreadStatistics.accumulatedCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" - } - }, - { - "columns": [ + }, + "pluginVersion": "10.4.3", + "targets": [ { - "selector": "0", - "text": "jdk.JavaThreadStatistics.activeCount", - "type": "number" + "columns": [ + { + "selector": "0", + "text": "jdk.JavaThreadStatistics.accumulatedCount", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "A", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.JavaThreadStatistics.accumulatedCount", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"A\", \"target\": \"jdk.JavaThreadStatistics.accumulatedCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } }, { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" - } - ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "refId": "B", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.JavaThreadStatistics.activeCount", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"B\", \"target\": \"jdk.JavaThreadStatistics.activeCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" - } - }, - { - "columns": [ - { - "selector": "0", - "text": "jdk.JavaThreadStatistics.daemonCount", - "type": "number" + "columns": [ + { + "selector": "0", + "text": "jdk.JavaThreadStatistics.activeCount", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "B", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.JavaThreadStatistics.activeCount", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"B\", \"target\": \"jdk.JavaThreadStatistics.activeCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } }, { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" - } - ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "refId": "C", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.JavaThreadStatistics.daemonCount", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"C\", \"target\": \"jdk.JavaThreadStatistics.daemonCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" - } - }, - { - "columns": [ - { - "selector": "0", - "text": "jdk.JavaThreadStatistics.peakCount", - "type": "number" - }, - { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" - } - ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "refId": "D", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.JavaThreadStatistics.peakCount", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"D\", \"target\": \"jdk.JavaThreadStatistics.peakCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" - } - } - ], - "title": "Java Thread Statistics", - "type": "timeseries" - }, - { - "datasource": { - "type": "yesoreyeram-infinity-datasource", - "uid": "PD4BE12CA5EBC7EA7" - }, - "fieldConfig": { - "defaults": { - "color": { - "mode": "palette-classic" - }, - "custom": { - "axisBorderShow": false, - "axisCenteredZero": false, - "axisColorMode": "text", - "axisLabel": "", - "axisPlacement": "auto", - "barAlignment": 0, - "drawStyle": "line", - "fillOpacity": 10, - "gradientMode": "none", - "hideFrom": { - "legend": false, - "tooltip": false, - "viz": false - }, - "insertNulls": false, - "lineInterpolation": "linear", - "lineWidth": 1, - "pointSize": 5, - "scaleDistribution": { - "type": "linear" - }, - "showPoints": "never", - "spanNulls": false, - "stacking": { - "group": "A", - "mode": "none" - }, - "thresholdsStyle": { - "mode": "off" - } - }, - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "red", - "value": 80 + "columns": [ + { + "selector": "0", + "text": "jdk.JavaThreadStatistics.daemonCount", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "C", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.JavaThreadStatistics.daemonCount", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"C\", \"target\": \"jdk.JavaThreadStatistics.daemonCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" } - ] - }, - "unit": "hertz" - }, - "overrides": [] - }, - "gridPos": { - "h": 6, - "w": 10, - "x": 10, - "y": 23 - }, - "id": 16, - "options": { - "legend": { - "calcs": [], - "displayMode": "list", - "placement": "bottom", - "showLegend": true - }, - "tooltip": { - "mode": "multi", - "sort": "none" - } - }, - "pluginVersion": "10.4.3", - "targets": [ - { - "columns": [ - { - "selector": "0", - "text": "jdk.ThreadContextSwitchRate.switchRate", - "type": "number" }, { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" + "columns": [ + { + "selector": "0", + "text": "jdk.JavaThreadStatistics.peakCount", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "D", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.JavaThreadStatistics.peakCount", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"D\", \"target\": \"jdk.JavaThreadStatistics.peakCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } } ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "rawQuery": true, - "refId": "A", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.ThreadContextSwitchRate.switchRate", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"A\", \"target\": \"jdk.ThreadContextSwitchRate.switchRate\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" - } - } - ], - "title": "Thread Context Switch Rate", - "type": "timeseries" - }, - { - "collapsed": true, - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 29 - }, - "id": 17, - "panels": [ + "title": "Java Thread Statistics", + "type": "timeseries" + }, { + "datasource": { + "type": "yesoreyeram-infinity-datasource", + "uid": "PD4BE12CA5EBC7EA7" + }, "fieldConfig": { "defaults": { "color": { @@ -1476,7 +1350,8 @@ "mode": "absolute", "steps": [ { - "color": "green" + "color": "green", + "value": null }, { "color": "red", @@ -1484,23 +1359,20 @@ } ] }, - "unit": "bytes" + "unit": "hertz" }, "overrides": [] }, "gridPos": { "h": 6, "w": 10, - "x": 0, - "y": 39 + "x": 10, + "y": 23 }, - "id": 18, + "id": 16, "options": { "legend": { - "calcs": [ - "max", - "min" - ], + "calcs": [], "displayMode": "list", "placement": "bottom", "showLegend": true @@ -1516,7 +1388,7 @@ "columns": [ { "selector": "0", - "text": "jdk.GCHeapSummary.heapUsed", + "text": "jdk.ThreadContextSwitchRate.switchRate", "type": "number" }, { @@ -1529,23 +1401,38 @@ "format": "as-is", "global_query_id": "", "parser": "backend", + "rawQuery": true, "refId": "A", "root_selector": "datapoints", "source": "url", - "target": "jdk.GCHeapSummary.heapUsed", + "target": "jdk.ThreadContextSwitchRate.switchRate", "type": "json", "url": "/query", "url_options": { "body_content_type": "application/json", "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"A\", \"target\": \"jdk.GCHeapSummary.heapUsed\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "data": "{ \"targets\": [{ \"refId\": \"A\", \"target\": \"jdk.ThreadContextSwitchRate.switchRate\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", "method": "POST" } } ], - "title": "Heap Usage", + "title": "Thread Context Switch Rate", "type": "timeseries" - }, + } + ], + "title": "Threads", + "type": "row" + }, + { + "collapsed": true, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 23 + }, + "id": 17, + "panels": [ { "fieldConfig": { "defaults": { @@ -1563,7 +1450,6 @@ "fillOpacity": 10, "gradientMode": "none", "hideFrom": { - "graph": false, "legend": false, "tooltip": false, "viz": false @@ -1576,7 +1462,7 @@ "type": "linear" }, "showPoints": "never", - "spanNulls": true, + "spanNulls": false, "stacking": { "group": "A", "mode": "none" @@ -1603,19 +1489,133 @@ "overrides": [] }, "gridPos": { - "h": 12, + "h": 6, "w": 10, - "x": 10, + "x": 0, "y": 39 }, - "id": 19, - "links": [ - { - "targetBlank": true, - "title": "Object Allocation Sample Dashboard", - "url": "d/obj_alloc_sample/object-allocation-sample-dashboard" - } - ], + "id": 18, + "options": { + "legend": { + "calcs": [ + "max", + "min" + ], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "pluginVersion": "10.4.3", + "targets": [ + { + "columns": [ + { + "selector": "0", + "text": "jdk.GCHeapSummary.heapUsed", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "A", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.GCHeapSummary.heapUsed", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"A\", \"target\": \"jdk.GCHeapSummary.heapUsed\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } + } + ], + "title": "Heap Usage", + "type": "timeseries" + }, + { + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "graph": false, + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "bytes" + }, + "overrides": [] + }, + "gridPos": { + "h": 12, + "w": 10, + "x": 10, + "y": 39 + }, + "id": 19, + "links": [ + { + "targetBlank": true, + "title": "Object Allocation Sample Dashboard", + "url": "d/obj_alloc_sample/object-allocation-sample-dashboard" + } + ], "options": { "graph": {}, "legend": { @@ -2173,448 +2173,448 @@ "type": "row" }, { - "collapsed": false, + "collapsed": true, "gridPos": { "h": 1, "w": 24, "x": 0, - "y": 30 + "y": 24 }, "id": 23, - "panels": [], - "title": "Compiler", - "type": "row" - }, - { - "fieldConfig": { - "defaults": { - "color": { - "fixedColor": "text", - "mode": "fixed" - }, - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null + "panels": [ + { + "fieldConfig": { + "defaults": { + "color": { + "fixedColor": "text", + "mode": "fixed" }, - { - "color": "red", - "value": 80 - } - ] + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "ms" + }, + "overrides": [] }, - "unit": "ms" - }, - "overrides": [] - }, - "gridPos": { - "h": 5, - "w": 3, - "x": 0, - "y": 31 - }, - "id": 24, - "options": { - "colorMode": "value", - "graphMode": "none", - "justifyMode": "auto", - "orientation": "auto", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - }, - "showPercentChange": false, - "text": {}, - "textMode": "auto", - "wideLayout": true - }, - "pluginVersion": "10.2.6", - "targets": [ - { - "columns": [ - { - "selector": "0", - "text": "jdk.CompilerStatistics.peakTimeSpent", - "type": "number" + "gridPos": { + "h": 5, + "w": 3, + "x": 0, + "y": 25 + }, + "id": 24, + "options": { + "colorMode": "value", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false }, + "showPercentChange": false, + "text": {}, + "textMode": "auto", + "wideLayout": true + }, + "pluginVersion": "10.2.6", + "targets": [ { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" + "columns": [ + { + "selector": "0", + "text": "jdk.CompilerStatistics.peakTimeSpent", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "A", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.CompilerStatistics.peakTimeSpent", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"B\", \"target\": \"jdk.CompilerStatistics.peakTimeSpent\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } } ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "refId": "A", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.CompilerStatistics.peakTimeSpent", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"B\", \"target\": \"jdk.CompilerStatistics.peakTimeSpent\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" - } - } - ], - "title": "Compiler Peak Time", - "type": "stat" - }, - { - "fieldConfig": { - "defaults": { - "color": { - "mode": "palette-classic" - }, - "custom": { - "axisBorderShow": false, - "axisCenteredZero": false, - "axisColorMode": "text", - "axisLabel": "", - "axisPlacement": "auto", - "barAlignment": 0, - "drawStyle": "line", - "fillOpacity": 10, - "gradientMode": "none", - "hideFrom": { - "legend": false, - "tooltip": false, - "viz": false - }, - "insertNulls": false, - "lineInterpolation": "linear", - "lineWidth": 1, - "pointSize": 5, - "scaleDistribution": { - "type": "linear" + "title": "Compiler Peak Time", + "type": "stat" + }, + { + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "ms" }, - "showPoints": "never", - "spanNulls": false, - "stacking": { - "group": "A", - "mode": "none" + "overrides": [] + }, + "gridPos": { + "h": 5, + "w": 10, + "x": 3, + "y": 25 + }, + "id": 25, + "options": { + "legend": { + "calcs": [ + "mean", + "max", + "min" + ], + "displayMode": "list", + "placement": "bottom", + "showLegend": true }, - "thresholdsStyle": { - "mode": "off" + "tooltip": { + "mode": "multi", + "sort": "none" } }, - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "red", - "value": 80 + "pluginVersion": "10.4.3", + "targets": [ + { + "columns": [ + { + "selector": "0", + "text": "jdk.CompilerStatistics.totalTimeSpent", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "A", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.CompilerStatistics.totalTimeSpent", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"A\", \"target\": \"jdk.CompilerStatistics.totalTimeSpent\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" } - ] - }, - "unit": "ms" - }, - "overrides": [] - }, - "gridPos": { - "h": 5, - "w": 10, - "x": 3, - "y": 31 - }, - "id": 25, - "options": { - "legend": { - "calcs": [ - "mean", - "max", - "min" + } ], - "displayMode": "list", - "placement": "bottom", - "showLegend": true + "title": "Compiler: Total Time Spent", + "type": "timeseries" }, - "tooltip": { - "mode": "multi", - "sort": "none" - } - }, - "pluginVersion": "10.4.3", - "targets": [ { - "columns": [ - { - "selector": "0", - "text": "jdk.CompilerStatistics.totalTimeSpent", - "type": "number" - }, - { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" - } - ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "refId": "A", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.CompilerStatistics.totalTimeSpent", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"A\", \"target\": \"jdk.CompilerStatistics.totalTimeSpent\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" - } - } - ], - "title": "Compiler: Total Time Spent", - "type": "timeseries" - }, - { - "fieldConfig": { - "defaults": { - "color": { - "mode": "palette-classic" - }, - "custom": { - "axisBorderShow": false, - "axisCenteredZero": false, - "axisColorMode": "text", - "axisLabel": "", - "axisPlacement": "auto", - "barAlignment": 0, - "drawStyle": "line", - "fillOpacity": 10, - "gradientMode": "none", - "hideFrom": { - "legend": false, - "tooltip": false, - "viz": false - }, - "insertNulls": false, - "lineInterpolation": "linear", - "lineWidth": 1, - "pointSize": 5, - "scaleDistribution": { - "type": "linear" - }, - "showPoints": "never", - "spanNulls": false, - "stacking": { - "group": "A", - "mode": "none" - }, - "thresholdsStyle": { - "mode": "off" - } - }, - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] }, - { - "color": "red", - "value": 80 - } - ] + "unit": "short" + }, + "overrides": [] }, - "unit": "short" - }, - "overrides": [] - }, - "gridPos": { - "h": 6, - "w": 13, - "x": 0, - "y": 36 - }, - "id": 26, - "options": { - "legend": { - "calcs": [], - "displayMode": "list", - "placement": "bottom", - "showLegend": true - }, - "tooltip": { - "mode": "multi", - "sort": "none" - } - }, - "pluginVersion": "10.4.3", - "targets": [ - { - "columns": [ - { - "selector": "0", - "text": "jdk.CompilerStatistics.compileCount", - "type": "number" + "gridPos": { + "h": 6, + "w": 13, + "x": 0, + "y": 30 + }, + "id": 26, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true }, - { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" + "tooltip": { + "mode": "multi", + "sort": "none" } - ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "refId": "A", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.CompilerStatistics.compileCount", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"A\", \"target\": \"jdk.CompilerStatistics.compileCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" - } - }, - { - "columns": [ + }, + "pluginVersion": "10.4.3", + "targets": [ { - "selector": "0", - "text": "jdk.CompilerStatistics.bailoutCount", - "type": "number" + "columns": [ + { + "selector": "0", + "text": "jdk.CompilerStatistics.compileCount", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "A", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.CompilerStatistics.compileCount", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"A\", \"target\": \"jdk.CompilerStatistics.compileCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } }, { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" - } - ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "refId": "B", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.CompilerStatistics.bailoutCount", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"B\", \"target\": \"jdk.CompilerStatistics.bailoutCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" - } - }, - { - "columns": [ - { - "selector": "0", - "text": "jdk.CompilerStatistics.invalidatedCount", - "type": "number" + "columns": [ + { + "selector": "0", + "text": "jdk.CompilerStatistics.bailoutCount", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "B", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.CompilerStatistics.bailoutCount", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"B\", \"target\": \"jdk.CompilerStatistics.bailoutCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } }, { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" - } - ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "refId": "C", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.CompilerStatistics.invalidatedCount", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"C\", \"target\": \"jdk.CompilerStatistics.invalidatedCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" - } - }, - { - "columns": [ - { - "selector": "0", - "text": "jdk.CompilerStatistics.osrCompileCount", - "type": "number" + "columns": [ + { + "selector": "0", + "text": "jdk.CompilerStatistics.invalidatedCount", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "C", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.CompilerStatistics.invalidatedCount", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"C\", \"target\": \"jdk.CompilerStatistics.invalidatedCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } }, { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" - } - ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "refId": "D", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.CompilerStatistics.osrCompileCount", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"D\", \"target\": \"jdk.CompilerStatistics.osrCompileCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" - } - }, - { - "columns": [ - { - "selector": "0", - "text": "jdk.CompilerStatistics.standardCompileCount", - "type": "number" + "columns": [ + { + "selector": "0", + "text": "jdk.CompilerStatistics.osrCompileCount", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "D", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.CompilerStatistics.osrCompileCount", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"D\", \"target\": \"jdk.CompilerStatistics.osrCompileCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } }, { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" + "columns": [ + { + "selector": "0", + "text": "jdk.CompilerStatistics.standardCompileCount", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "E", + "root_selector": "datapoints", + "source": "url", + "target": "jdk.CompilerStatistics.standardCompileCount", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"E\", \"target\": \"jdk.CompilerStatistics.standardCompileCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } } ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "refId": "E", - "root_selector": "datapoints", - "source": "url", - "target": "jdk.CompilerStatistics.standardCompileCount", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"E\", \"target\": \"jdk.CompilerStatistics.standardCompileCount\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" - } + "title": "Compiler Statistics", + "type": "timeseries" } ], - "title": "Compiler Statistics", - "type": "timeseries" + "title": "Compiler", + "type": "row" }, { "collapsed": true, @@ -2622,7 +2622,7 @@ "h": 1, "w": 24, "x": 0, - "y": 42 + "y": 25 }, "id": 27, "panels": [ @@ -2881,163 +2881,165 @@ "type": "row" }, { - "collapsed": false, + "collapsed": true, "gridPos": { "h": 1, "w": 24, "x": 0, - "y": 43 + "y": 26 }, "id": 31, - "panels": [], - "title": "Frameworks", - "type": "row" - }, - { - "datasource": { - "type": "yesoreyeram-infinity-datasource", - "uid": "PD4BE12CA5EBC7EA7" - }, - "fieldConfig": { - "defaults": { - "color": { - "mode": "palette-classic" + "panels": [ + { + "datasource": { + "type": "yesoreyeram-infinity-datasource", + "uid": "PD4BE12CA5EBC7EA7" }, - "custom": { - "axisBorderShow": false, - "axisCenteredZero": false, - "axisColorMode": "text", - "axisLabel": "", - "axisPlacement": "auto", - "barAlignment": 0, - "drawStyle": "line", - "fillOpacity": 10, - "gradientMode": "none", - "hideFrom": { - "legend": false, - "tooltip": false, - "viz": false - }, - "insertNulls": false, - "lineInterpolation": "linear", - "lineWidth": 1, - "pointSize": 5, - "scaleDistribution": { - "type": "linear" + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "timeticks" }, - "showPoints": "never", - "spanNulls": false, - "stacking": { - "group": "A", - "mode": "none" + "overrides": [] + }, + "gridPos": { + "h": 5, + "w": 10, + "x": 0, + "y": 27 + }, + "id": 32, + "options": { + "legend": { + "calcs": [ + "mean", + "max", + "min" + ], + "displayMode": "list", + "placement": "bottom", + "showLegend": true }, - "thresholdsStyle": { - "mode": "off" + "tooltip": { + "mode": "multi", + "sort": "none" } }, - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green" - }, - { - "color": "red", - "value": 80 + "pluginVersion": "10.4.3", + "targets": [ + { + "columns": [ + { + "selector": "0", + "text": "quarkus.Rest.duration", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "A", + "root_selector": "datapoints", + "source": "url", + "target": "quarkus.Rest.duration", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"A\", \"target\": \"quarkus.Rest.duration\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" } - ] - }, - "unit": "timeticks" - }, - "overrides": [] - }, - "gridPos": { - "h": 5, - "w": 10, - "x": 0, - "y": 44 - }, - "id": 32, - "options": { - "legend": { - "calcs": [ - "mean", - "max", - "min" + } ], - "displayMode": "list", - "placement": "bottom", - "showLegend": true - }, - "tooltip": { - "mode": "multi", - "sort": "none" - } - }, - "pluginVersion": "10.4.3", - "targets": [ - { - "columns": [ - { - "selector": "0", - "text": "quarkus.Rest.duration", - "type": "number" - }, + "title": "Quarkus REST", + "transformations": [ { - "selector": "1", - "text": "timestamp", - "type": "timestamp_epoch" + "id": "calculateField", + "options": { + "binary": { + "left": "quarkus.Rest.duration", + "operator": "/", + "right": "10" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + }, + "replaceFields": true + } } ], - "filters": [], - "format": "as-is", - "global_query_id": "", - "parser": "backend", - "refId": "A", - "root_selector": "datapoints", - "source": "url", - "target": "quarkus.Rest.duration", - "type": "json", - "url": "/query", - "url_options": { - "body_content_type": "application/json", - "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"A\", \"target\": \"quarkus.Rest.duration\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", - "method": "POST" - } - } - ], - "title": "Quarkus REST", - "transformations": [ - { - "id": "calculateField", - "options": { - "binary": { - "left": "quarkus.Rest.duration", - "operator": "/", - "right": "10" - }, - "mode": "binary", - "reduce": { - "reducer": "sum" - }, - "replaceFields": true - } + "type": "timeseries" } ], - "type": "timeseries" + "title": "Frameworks", + "type": "row" } ], - "refresh": "", + "refresh": false, "schemaVersion": 39, "tags": [], "templating": { "list": [] }, "time": { - "from": "now-1h", - "to": "now" + "from": "2025-09-02T16:43:51.220Z", + "to": "2025-09-02T16:45:02.107Z" }, "timepicker": { "refresh_intervals": [ From 02ef11855ebe5be4536d42ac3e6fab147c252d54 Mon Sep 17 00:00:00 2001 From: Andrew Azores Date: Tue, 2 Sep 2025 12:47:08 -0400 Subject: [PATCH 05/15] remove explicit datasource link --- dashboards/main.dashboard.json | 8 -------- 1 file changed, 8 deletions(-) diff --git a/dashboards/main.dashboard.json b/dashboards/main.dashboard.json index db3f3ac..40328e6 100644 --- a/dashboards/main.dashboard.json +++ b/dashboards/main.dashboard.json @@ -1304,10 +1304,6 @@ "type": "timeseries" }, { - "datasource": { - "type": "yesoreyeram-infinity-datasource", - "uid": "PD4BE12CA5EBC7EA7" - }, "fieldConfig": { "defaults": { "color": { @@ -2891,10 +2887,6 @@ "id": 31, "panels": [ { - "datasource": { - "type": "yesoreyeram-infinity-datasource", - "uid": "PD4BE12CA5EBC7EA7" - }, "fieldConfig": { "defaults": { "color": { From e896958eaa4440d698f26b91906d430653c16b23 Mon Sep 17 00:00:00 2001 From: Andrew Azores Date: Tue, 2 Sep 2025 12:50:36 -0400 Subject: [PATCH 06/15] correct time window --- dashboards/main.dashboard.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dashboards/main.dashboard.json b/dashboards/main.dashboard.json index 40328e6..a672078 100644 --- a/dashboards/main.dashboard.json +++ b/dashboards/main.dashboard.json @@ -3030,8 +3030,8 @@ "list": [] }, "time": { - "from": "2025-09-02T16:43:51.220Z", - "to": "2025-09-02T16:45:02.107Z" + "from": "now-1h", + "to": "now" }, "timepicker": { "refresh_intervals": [ From 1f5facd60575463908c1fc686f9664feeca2885c Mon Sep 17 00:00:00 2001 From: Andrew Azores Date: Tue, 2 Sep 2025 13:00:42 -0400 Subject: [PATCH 07/15] hide division operation from labels --- dashboards/main.dashboard.json | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/dashboards/main.dashboard.json b/dashboards/main.dashboard.json index a672078..b1d8dc0 100644 --- a/dashboards/main.dashboard.json +++ b/dashboards/main.dashboard.json @@ -1145,8 +1145,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -1346,8 +1345,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -2190,8 +2188,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -2306,8 +2303,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -3003,6 +2999,7 @@ { "id": "calculateField", "options": { + "alias": "quarkus.Rest.duration", "binary": { "left": "quarkus.Rest.duration", "operator": "/", From bd164f1332bafa3b9b827092927883db600184e7 Mon Sep 17 00:00:00 2001 From: Andrew Azores Date: Tue, 2 Sep 2025 14:27:15 -0400 Subject: [PATCH 08/15] add Frameworks > Hibernate ORM panel --- dashboards/main.dashboard.json | 489 +++++++++++++++++++++++++++++++-- 1 file changed, 470 insertions(+), 19 deletions(-) diff --git a/dashboards/main.dashboard.json b/dashboards/main.dashboard.json index b1d8dc0..f92b3dc 100644 --- a/dashboards/main.dashboard.json +++ b/dashboards/main.dashboard.json @@ -1007,7 +1007,7 @@ "h": 6, "w": 13, "x": 0, - "y": 37 + "y": 45 }, "id": 13, "options": { @@ -1161,7 +1161,7 @@ "h": 6, "w": 10, "x": 0, - "y": 23 + "y": 31 }, "id": 15, "options": { @@ -1361,7 +1361,7 @@ "h": 6, "w": 10, "x": 10, - "y": 23 + "y": 31 }, "id": 16, "options": { @@ -1470,7 +1470,8 @@ "mode": "absolute", "steps": [ { - "color": "green" + "color": "green", + "value": null }, { "color": "red", @@ -1486,7 +1487,7 @@ "h": 6, "w": 10, "x": 0, - "y": 39 + "y": 24 }, "id": 18, "options": { @@ -1584,7 +1585,8 @@ "mode": "absolute", "steps": [ { - "color": "green" + "color": "green", + "value": null }, { "color": "red", @@ -1600,7 +1602,7 @@ "h": 12, "w": 10, "x": 10, - "y": 39 + "y": 24 }, "id": 19, "links": [ @@ -1692,7 +1694,8 @@ "mode": "absolute", "steps": [ { - "color": "green" + "color": "green", + "value": null }, { "color": "red", @@ -1708,7 +1711,7 @@ "h": 6, "w": 10, "x": 0, - "y": 45 + "y": 30 }, "id": 20, "options": { @@ -1805,7 +1808,8 @@ "mode": "absolute", "steps": [ { - "color": "green" + "color": "green", + "value": null }, { "color": "red", @@ -1821,7 +1825,7 @@ "h": 6, "w": 10, "x": 0, - "y": 51 + "y": 36 }, "id": 21, "options": { @@ -2065,7 +2069,8 @@ "mode": "absolute", "steps": [ { - "color": "green" + "color": "green", + "value": null }, { "color": "red", @@ -2081,7 +2086,7 @@ "h": 6, "w": 10, "x": 10, - "y": 51 + "y": 36 }, "id": 22, "options": { @@ -2204,7 +2209,7 @@ "h": 5, "w": 3, "x": 0, - "y": 25 + "y": 33 }, "id": 24, "options": { @@ -2319,7 +2324,7 @@ "h": 5, "w": 10, "x": 3, - "y": 25 + "y": 33 }, "id": 25, "options": { @@ -2433,7 +2438,7 @@ "h": 6, "w": 13, "x": 0, - "y": 30 + "y": 38 }, "id": 26, "options": { @@ -2677,7 +2682,7 @@ "h": 6, "w": 10, "x": 0, - "y": 41 + "y": 49 }, "id": 28, "options": { @@ -2817,7 +2822,7 @@ "h": 6, "w": 10, "x": 10, - "y": 41 + "y": 49 }, "id": 29, "options": { @@ -2939,7 +2944,7 @@ "overrides": [] }, "gridPos": { - "h": 5, + "h": 7, "w": 10, "x": 0, "y": 27 @@ -3014,6 +3019,452 @@ } ], "type": "timeseries" + }, + { + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "timeticks" + }, + "overrides": [] + }, + "gridPos": { + "h": 12, + "w": 9, + "x": 10, + "y": 27 + }, + "id": 33, + "options": { + "legend": { + "calcs": [ + "mean", + "max", + "min" + ], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "pluginVersion": "10.4.3", + "targets": [ + { + "columns": [ + { + "selector": "0", + "text": "org.hibernate.orm.CacheGet.duration", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "A", + "root_selector": "datapoints", + "source": "url", + "target": "org.hibernate.orm.CacheGet.duration", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"A\", \"target\": \"org.hibernate.orm.CacheGet.duration\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } + }, + { + "columns": [ + { + "selector": "0", + "text": "org.hibernate.orm.CachePut.duration", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "B", + "root_selector": "datapoints", + "source": "url", + "target": "org.hibernate.orm.CachePut.duration", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"B\", \"target\": \"org.hibernate.orm.CachePut.duration\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } + }, + { + "columns": [ + { + "selector": "0", + "text": "org.hibernate.orm.CollectionRecreateEvent.duration", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "C", + "root_selector": "datapoints", + "source": "url", + "target": "org.hibernate.orm.CollectionRecreateEvent.duration", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"C\", \"target\": \"org.hibernate.orm.CollectionRecreateEvent.duration\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } + }, + { + "columns": [ + { + "selector": "0", + "text": "org.hibernate.orm.CollectionRemoveEvent.duration", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "D", + "root_selector": "datapoints", + "source": "url", + "target": "org.hibernate.orm.CollectionRemoveEvent.duration", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"D\", \"target\": \"org.hibernate.orm.CollectionRemoveEvent.duration\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } + }, + { + "columns": [ + { + "selector": "0", + "text": "org.hibernate.orm.CollectionUpdateEvent.duration", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "E", + "root_selector": "datapoints", + "source": "url", + "target": "org.hibernate.orm.CollectionUpdateEvent.duration", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"E\", \"target\": \"org.hibernate.orm.CollectionUpdateEvent.duration\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } + }, + { + "columns": [ + { + "selector": "0", + "text": "org.hibernate.orm.DirtyCalculationEvent.duration", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "F", + "root_selector": "datapoints", + "source": "url", + "target": "org.hibernate.orm.DirtyCalculationEvent.duration", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"F\", \"target\": \"org.hibernate.orm.DirtyCalculationEvent.duration\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } + }, + { + "columns": [ + { + "selector": "0", + "text": "org.hibernate.orm.EntityDeleteEvent.duration", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "G", + "root_selector": "datapoints", + "source": "url", + "target": "org.hibernate.orm.EntityDeleteEvent.duration", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"G\", \"target\": \"org.hibernate.orm.EntityDeleteEvent.duration\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } + }, + { + "columns": [ + { + "selector": "0", + "text": "org.hibernate.orm.EntityInsertEvent.duration", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "H", + "root_selector": "datapoints", + "source": "url", + "target": "org.hibernate.orm.EntityInsertEvent.duration", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"H\", \"target\": \"org.hibernate.orm.EntityInsertEvent.duration\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } + }, + { + "columns": [ + { + "selector": "0", + "text": "org.hibernate.orm.EntityUpdateEvent.duration", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "I", + "root_selector": "datapoints", + "source": "url", + "target": "org.hibernate.orm.EntityUpdateEvent.duration", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"I\", \"target\": \"org.hibernate.orm.EntityUpdateEvent.duration\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } + }, + { + "columns": [ + { + "selector": "0", + "text": "org.hibernate.orm.EntityUpsertEvent.duration", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "J", + "root_selector": "datapoints", + "source": "url", + "target": "org.hibernate.orm.EntityUpsertEvent.duration", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"J\", \"target\": \"org.hibernate.orm.EntityUpsertEvent.duration\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } + }, + { + "columns": [ + { + "selector": "0", + "text": "org.hibernate.orm.FlushEvent.duration", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "K", + "root_selector": "datapoints", + "source": "url", + "target": "org.hibernate.orm.FlushEvent.duration", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"K\", \"target\": \"org.hibernate.orm.FlushEvent.duration\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } + }, + { + "columns": [ + { + "selector": "0", + "text": "org.hibernate.orm.JdbcBatchExecution.duration", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "parser": "backend", + "refId": "L", + "root_selector": "datapoints", + "source": "url", + "target": "org.hibernate.orm.JdbcBatchExecution.duration", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{ \"targets\": [{ \"refId\": \"L\", \"target\": \"org.hibernate.orm.JdbcBatchExecution.duration\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "method": "POST" + } + } + ], + "title": "Hibernate ORM", + "transformations": [], + "type": "timeseries" } ], "title": "Frameworks", From d2219a3b7123bcb354af65da44419ae9642667ca Mon Sep 17 00:00:00 2001 From: Andrew Azores Date: Thu, 4 Sep 2025 15:24:47 -0400 Subject: [PATCH 09/15] correct (unused) refId --- dashboards/main.dashboard.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dashboards/main.dashboard.json b/dashboards/main.dashboard.json index f92b3dc..e3171b2 100644 --- a/dashboards/main.dashboard.json +++ b/dashboards/main.dashboard.json @@ -659,7 +659,7 @@ "url_options": { "body_content_type": "application/json", "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"B\", \"target\": \"jdk.CPULoad.machineTotal\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "data": "{ \"targets\": [{ \"refId\": \"C\", \"target\": \"jdk.CPULoad.machineTotal\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", "method": "POST" } } From fd11d0631e5138332434f9d6ad4668445fb9d344 Mon Sep 17 00:00:00 2001 From: Andrew Azores Date: Thu, 4 Sep 2025 15:27:04 -0400 Subject: [PATCH 10/15] add Quarkus REST endpoints stats table --- dashboards/main.dashboard.json | 332 ++++++++++++++++++++++++++++++--- 1 file changed, 302 insertions(+), 30 deletions(-) diff --git a/dashboards/main.dashboard.json b/dashboards/main.dashboard.json index e3171b2..47d47b6 100644 --- a/dashboards/main.dashboard.json +++ b/dashboards/main.dashboard.json @@ -853,7 +853,7 @@ "h": 6, "w": 13, "x": 0, - "y": 21 + "y": 29 }, "id": 11, "options": { @@ -1007,7 +1007,7 @@ "h": 6, "w": 13, "x": 0, - "y": 45 + "y": 53 }, "id": 13, "options": { @@ -1161,7 +1161,7 @@ "h": 6, "w": 10, "x": 0, - "y": 31 + "y": 39 }, "id": 15, "options": { @@ -1361,7 +1361,7 @@ "h": 6, "w": 10, "x": 10, - "y": 31 + "y": 39 }, "id": 16, "options": { @@ -1470,8 +1470,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -1487,7 +1486,7 @@ "h": 6, "w": 10, "x": 0, - "y": 24 + "y": 32 }, "id": 18, "options": { @@ -1585,8 +1584,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -1602,7 +1600,7 @@ "h": 12, "w": 10, "x": 10, - "y": 24 + "y": 32 }, "id": 19, "links": [ @@ -1694,8 +1692,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -1711,7 +1708,7 @@ "h": 6, "w": 10, "x": 0, - "y": 30 + "y": 38 }, "id": 20, "options": { @@ -1808,8 +1805,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -1825,7 +1821,7 @@ "h": 6, "w": 10, "x": 0, - "y": 36 + "y": 44 }, "id": 21, "options": { @@ -2069,8 +2065,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -2086,7 +2081,7 @@ "h": 6, "w": 10, "x": 10, - "y": 36 + "y": 44 }, "id": 22, "options": { @@ -2209,7 +2204,7 @@ "h": 5, "w": 3, "x": 0, - "y": 33 + "y": 41 }, "id": 24, "options": { @@ -2324,7 +2319,7 @@ "h": 5, "w": 10, "x": 3, - "y": 33 + "y": 41 }, "id": 25, "options": { @@ -2438,7 +2433,7 @@ "h": 6, "w": 13, "x": 0, - "y": 38 + "y": 46 }, "id": 26, "options": { @@ -2682,7 +2677,7 @@ "h": 6, "w": 10, "x": 0, - "y": 49 + "y": 57 }, "id": 28, "options": { @@ -2822,7 +2817,7 @@ "h": 6, "w": 10, "x": 10, - "y": 49 + "y": 57 }, "id": 29, "options": { @@ -2944,7 +2939,7 @@ "overrides": [] }, "gridPos": { - "h": 7, + "h": 11, "w": 10, "x": 0, "y": 27 @@ -2999,7 +2994,7 @@ } } ], - "title": "Quarkus REST", + "title": "Quarkus REST Timeseries", "transformations": [ { "id": "calculateField", @@ -3077,8 +3072,8 @@ "overrides": [] }, "gridPos": { - "h": 12, - "w": 9, + "h": 11, + "w": 10, "x": 10, "y": 27 }, @@ -3463,15 +3458,292 @@ } ], "title": "Hibernate ORM", - "transformations": [], "type": "timeseries" + }, + { + "fieldConfig": { + "defaults": { + "custom": { + "align": "auto", + "cellOptions": { + "type": "auto" + }, + "inspect": false + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "Field" + }, + "properties": [ + { + "id": "custom.width", + "value": 841 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Max" + }, + "properties": [ + { + "id": "custom.width", + "value": 105 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Min" + }, + "properties": [ + { + "id": "custom.width", + "value": 87 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Mean" + }, + "properties": [ + { + "id": "custom.width", + "value": 95 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "StdDev" + }, + "properties": [ + { + "id": "custom.width", + "value": 88 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Count" + }, + "properties": [ + { + "id": "custom.width", + "value": 64 + } + ] + } + ] + }, + "gridPos": { + "h": 11, + "w": 20, + "x": 0, + "y": 38 + }, + "id": 34, + "options": { + "cellHeight": "sm", + "footer": { + "countRows": false, + "fields": "", + "reducer": [ + "sum" + ], + "show": false + }, + "showHeader": true, + "sortBy": [ + { + "desc": true, + "displayName": "Mean" + } + ] + }, + "pluginVersion": "10.4.3", + "targets": [ + { + "columns": [ + { + "selector": "0", + "text": "duration", + "type": "number" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "hide": false, + "parser": "backend", + "refId": "A", + "root_selector": "datapoints", + "source": "url", + "target": "quarkus.Rest.duration", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{\n \"targets\": [\n { \"refId\": \"A\", \"target\": \"quarkus.Rest.duration\", \"type\": \"timeserie\" }\n ],\n \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" }\n}", + "method": "POST" + } + }, + { + "columns": [ + { + "selector": "0", + "text": "method", + "type": "string" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "hide": false, + "parser": "backend", + "refId": "B", + "root_selector": "datapoints", + "source": "url", + "target": "quarkus.Rest.duration", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{\n \"targets\": [\n { \"refId\": \"B\", \"target\": \"quarkus.Rest.httpMethod\", \"type\": \"timeserie\" }\n ],\n \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" }\n}", + "method": "POST" + } + }, + { + "columns": [ + { + "selector": "0", + "text": "path", + "type": "string" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "hide": false, + "parser": "backend", + "refId": "C", + "root_selector": "datapoints", + "source": "url", + "target": "quarkus.Rest.duration", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{\n \"targets\": [\n { \"refId\": \"B\", \"target\": \"quarkus.Rest.uri\", \"type\": \"timeserie\" }\n ],\n \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" }\n}", + "method": "POST" + } + } + ], + "title": "Quarkus REST Endpoint Statistics", + "transformations": [ + { + "id": "calculateField", + "options": { + "alias": "endpoint", + "binary": { + "left": "method B", + "right": "path C" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + }, + "replaceFields": false + } + }, + { + "id": "filterFieldsByName", + "options": { + "byVariable": false, + "include": { + "names": [ + "endpoint", + "duration A" + ] + } + } + }, + { + "id": "partitionByValues", + "options": { + "fields": [ + "endpoint" + ], + "keepFields": false, + "naming": { + "asLabels": false + } + } + }, + { + "id": "reduce", + "options": { + "labelsToFields": false, + "reducers": [ + "max", + "min", + "mean", + "stdDev", + "count" + ] + } + } + ], + "type": "table" } ], "title": "Frameworks", "type": "row" } ], - "refresh": false, + "refresh": "", "schemaVersion": 39, "tags": [], "templating": { From f5cfd4f467092f34c770a2549e1e0400570dc217 Mon Sep 17 00:00:00 2001 From: Andrew Azores Date: Thu, 4 Sep 2025 15:44:06 -0400 Subject: [PATCH 11/15] cleanup --- dashboards/main.dashboard.json | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/dashboards/main.dashboard.json b/dashboards/main.dashboard.json index 47d47b6..78e67ac 100644 --- a/dashboards/main.dashboard.json +++ b/dashboards/main.dashboard.json @@ -2925,8 +2925,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -3058,8 +3057,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -3475,8 +3473,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", From 7be3cf8600b8be8cd16db1f4101f8a6ad2fb2154 Mon Sep 17 00:00:00 2001 From: Andrew Azores Date: Thu, 4 Sep 2025 16:29:54 -0400 Subject: [PATCH 12/15] REST stats table uses resource class/method instead of HTTP verb/path --- dashboards/main.dashboard.json | 79 +++++++++++++++------------------- 1 file changed, 34 insertions(+), 45 deletions(-) diff --git a/dashboards/main.dashboard.json b/dashboards/main.dashboard.json index 78e67ac..7fa2cdb 100644 --- a/dashboards/main.dashboard.json +++ b/dashboards/main.dashboard.json @@ -1470,7 +1470,8 @@ "mode": "absolute", "steps": [ { - "color": "green" + "color": "green", + "value": null }, { "color": "red", @@ -1486,7 +1487,7 @@ "h": 6, "w": 10, "x": 0, - "y": 32 + "y": 24 }, "id": 18, "options": { @@ -1584,7 +1585,8 @@ "mode": "absolute", "steps": [ { - "color": "green" + "color": "green", + "value": null }, { "color": "red", @@ -1600,7 +1602,7 @@ "h": 12, "w": 10, "x": 10, - "y": 32 + "y": 24 }, "id": 19, "links": [ @@ -1692,7 +1694,8 @@ "mode": "absolute", "steps": [ { - "color": "green" + "color": "green", + "value": null }, { "color": "red", @@ -1708,7 +1711,7 @@ "h": 6, "w": 10, "x": 0, - "y": 38 + "y": 30 }, "id": 20, "options": { @@ -1805,7 +1808,8 @@ "mode": "absolute", "steps": [ { - "color": "green" + "color": "green", + "value": null }, { "color": "red", @@ -1821,7 +1825,7 @@ "h": 6, "w": 10, "x": 0, - "y": 44 + "y": 36 }, "id": 21, "options": { @@ -2065,7 +2069,8 @@ "mode": "absolute", "steps": [ { - "color": "green" + "color": "green", + "value": null }, { "color": "red", @@ -2081,7 +2086,7 @@ "h": 6, "w": 10, "x": 10, - "y": 44 + "y": 36 }, "id": 22, "options": { @@ -2925,7 +2930,8 @@ "mode": "absolute", "steps": [ { - "color": "green" + "color": "green", + "value": null }, { "color": "red", @@ -2941,7 +2947,7 @@ "h": 11, "w": 10, "x": 0, - "y": 27 + "y": 45 }, "id": 32, "options": { @@ -3057,7 +3063,8 @@ "mode": "absolute", "steps": [ { - "color": "green" + "color": "green", + "value": null }, { "color": "red", @@ -3073,7 +3080,7 @@ "h": 11, "w": 10, "x": 10, - "y": 27 + "y": 45 }, "id": 33, "options": { @@ -3473,7 +3480,8 @@ "mode": "absolute", "steps": [ { - "color": "green" + "color": "green", + "value": null }, { "color": "red", @@ -3491,7 +3499,7 @@ "properties": [ { "id": "custom.width", - "value": 841 + "value": 1080 } ] }, @@ -3561,7 +3569,7 @@ "h": 11, "w": 20, "x": 0, - "y": 38 + "y": 56 }, "id": 34, "options": { @@ -3619,7 +3627,7 @@ "columns": [ { "selector": "0", - "text": "method", + "text": "resourceClass", "type": "string" }, { @@ -3642,7 +3650,7 @@ "url_options": { "body_content_type": "application/json", "body_type": "raw", - "data": "{\n \"targets\": [\n { \"refId\": \"B\", \"target\": \"quarkus.Rest.httpMethod\", \"type\": \"timeserie\" }\n ],\n \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" }\n}", + "data": "{\n \"targets\": [\n { \"refId\": \"B\", \"target\": \"quarkus.Rest.resourceClass\", \"type\": \"timeserie\" }\n ],\n \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" }\n}", "method": "POST" } }, @@ -3650,7 +3658,7 @@ "columns": [ { "selector": "0", - "text": "path", + "text": "resourceMethod", "type": "string" }, { @@ -3673,7 +3681,7 @@ "url_options": { "body_content_type": "application/json", "body_type": "raw", - "data": "{\n \"targets\": [\n { \"refId\": \"B\", \"target\": \"quarkus.Rest.uri\", \"type\": \"timeserie\" }\n ],\n \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" }\n}", + "data": "{\n \"targets\": [\n { \"refId\": \"B\", \"target\": \"quarkus.Rest.resourceMethod\", \"type\": \"timeserie\" }\n ],\n \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" }\n}", "method": "POST" } } @@ -3681,37 +3689,18 @@ "title": "Quarkus REST Endpoint Statistics", "transformations": [ { - "id": "calculateField", - "options": { - "alias": "endpoint", - "binary": { - "left": "method B", - "right": "path C" - }, - "mode": "binary", - "reduce": { - "reducer": "sum" - }, - "replaceFields": false - } - }, - { - "id": "filterFieldsByName", + "id": "joinByField", "options": { - "byVariable": false, - "include": { - "names": [ - "endpoint", - "duration A" - ] - } + "byField": "timestamp", + "mode": "outer" } }, { "id": "partitionByValues", "options": { "fields": [ - "endpoint" + "resourceClass B", + "resourceMethod C" ], "keepFields": false, "naming": { From fbfa6276be4ffa9375b37b51ea964924da02cb4c Mon Sep 17 00:00:00 2001 From: Andrew Azores Date: Thu, 4 Sep 2025 16:37:51 -0400 Subject: [PATCH 13/15] class/method as separate columns --- dashboards/main.dashboard.json | 141 +++++++++++++++++++++++++++------ 1 file changed, 115 insertions(+), 26 deletions(-) diff --git a/dashboards/main.dashboard.json b/dashboards/main.dashboard.json index 7fa2cdb..1e19b51 100644 --- a/dashboards/main.dashboard.json +++ b/dashboards/main.dashboard.json @@ -2947,7 +2947,7 @@ "h": 11, "w": 10, "x": 0, - "y": 45 + "y": 27 }, "id": 32, "options": { @@ -3080,7 +3080,7 @@ "h": 11, "w": 10, "x": 10, - "y": 45 + "y": 27 }, "id": 33, "options": { @@ -3562,6 +3562,90 @@ "value": 64 } ] + }, + { + "matcher": { + "id": "byName", + "options": "resourceMethod" + }, + "properties": [ + { + "id": "custom.width", + "value": 319 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "duration (stdDev)" + }, + "properties": [ + { + "id": "custom.width", + "value": 95 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "duration (count)" + }, + "properties": [ + { + "id": "custom.width", + "value": 112 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "duration (max)" + }, + "properties": [ + { + "id": "custom.width", + "value": 119 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "duration (min)" + }, + "properties": [ + { + "id": "custom.width", + "value": 135 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "duration (mean)" + }, + "properties": [ + { + "id": "custom.width", + "value": 191 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "resourceClass" + }, + "properties": [ + { + "id": "custom.width", + "value": 559 + } + ] } ] }, @@ -3569,9 +3653,9 @@ "h": 11, "w": 20, "x": 0, - "y": 56 + "y": 38 }, - "id": 34, + "id": 35, "options": { "cellHeight": "sm", "footer": { @@ -3586,7 +3670,7 @@ "sortBy": [ { "desc": true, - "displayName": "Mean" + "displayName": "duration (mean)" } ] }, @@ -3696,30 +3780,35 @@ } }, { - "id": "partitionByValues", + "id": "groupBy", "options": { - "fields": [ - "resourceClass B", - "resourceMethod C" - ], - "keepFields": false, - "naming": { - "asLabels": false + "fields": { + "duration": { + "aggregations": [ + "mean", + "min", + "max", + "stdDev", + "count" + ], + "operation": "aggregate" + }, + "resourceClass": { + "aggregations": [], + "operation": "groupby" + }, + "resourceClass B": { + "aggregations": [], + "operation": "groupby" + }, + "resourceMethod": { + "aggregations": [ + "mean" + ], + "operation": "groupby" + } } } - }, - { - "id": "reduce", - "options": { - "labelsToFields": false, - "reducers": [ - "max", - "min", - "mean", - "stdDev", - "count" - ] - } } ], "type": "table" From 34ae3c383d9f70cfae409dffe6ffa950097ac9c8 Mon Sep 17 00:00:00 2001 From: Andrew Azores Date: Thu, 4 Sep 2025 16:47:54 -0400 Subject: [PATCH 14/15] REST timeseries as scatter plot --- dashboards/main.dashboard.json | 146 +++++++++++++++++++++++---------- 1 file changed, 103 insertions(+), 43 deletions(-) diff --git a/dashboards/main.dashboard.json b/dashboards/main.dashboard.json index 1e19b51..66f9dd6 100644 --- a/dashboards/main.dashboard.json +++ b/dashboards/main.dashboard.json @@ -2899,32 +2899,24 @@ "axisColorMode": "text", "axisLabel": "", "axisPlacement": "auto", - "barAlignment": 0, - "drawStyle": "line", - "fillOpacity": 10, - "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, - "insertNulls": false, - "lineInterpolation": "linear", - "lineWidth": 1, - "pointSize": 5, - "scaleDistribution": { - "type": "linear" + "lineStyle": { + "fill": "solid" }, - "showPoints": "never", - "spanNulls": false, - "stacking": { - "group": "A", - "mode": "none" + "pointSize": { + "fixed": 5 }, - "thresholdsStyle": { - "mode": "off" - } + "scaleDistribution": { + "log": 10, + "type": "log" + }, + "show": "points" }, + "fieldMinMax": false, "mappings": [], "thresholds": { "mode": "absolute", @@ -2938,8 +2930,7 @@ "value": 80 } ] - }, - "unit": "timeticks" + } }, "overrides": [] }, @@ -2949,20 +2940,35 @@ "x": 0, "y": 27 }, - "id": 32, + "id": 36, "options": { + "dims": { + "frame": 0 + }, "legend": { - "calcs": [ - "mean", - "max", - "min" - ], + "calcs": [], "displayMode": "list", "placement": "bottom", - "showLegend": true + "showLegend": false }, + "series": [ + { + "pointColor": { + "fixed": "dark-green" + }, + "pointSize": { + "field": "duration A", + "fixed": 50.5, + "max": 20, + "min": 5 + }, + "x": "timestamp", + "y": "duration A" + } + ], + "seriesMapping": "manual", "tooltip": { - "mode": "multi", + "mode": "single", "sort": "none" } }, @@ -2972,7 +2978,7 @@ "columns": [ { "selector": "0", - "text": "quarkus.Rest.duration", + "text": "duration", "type": "number" }, { @@ -2984,6 +2990,7 @@ "filters": [], "format": "as-is", "global_query_id": "", + "hide": false, "parser": "backend", "refId": "A", "root_selector": "datapoints", @@ -2994,7 +3001,69 @@ "url_options": { "body_content_type": "application/json", "body_type": "raw", - "data": "{ \"targets\": [{ \"refId\": \"A\", \"target\": \"quarkus.Rest.duration\", \"type\": \"timeserie\" }], \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" } }", + "data": "{\n \"targets\": [\n { \"refId\": \"A\", \"target\": \"quarkus.Rest.duration\", \"type\": \"timeserie\" }\n ],\n \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" }\n}", + "method": "POST" + } + }, + { + "columns": [ + { + "selector": "0", + "text": "resourceClass", + "type": "string" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "hide": false, + "parser": "backend", + "refId": "B", + "root_selector": "datapoints", + "source": "url", + "target": "quarkus.Rest.duration", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{\n \"targets\": [\n { \"refId\": \"B\", \"target\": \"quarkus.Rest.resourceClass\", \"type\": \"timeserie\" }\n ],\n \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" }\n}", + "method": "POST" + } + }, + { + "columns": [ + { + "selector": "0", + "text": "resourceMethod", + "type": "string" + }, + { + "selector": "1", + "text": "timestamp", + "type": "timestamp_epoch" + } + ], + "filters": [], + "format": "as-is", + "global_query_id": "", + "hide": false, + "parser": "backend", + "refId": "C", + "root_selector": "datapoints", + "source": "url", + "target": "quarkus.Rest.duration", + "type": "json", + "url": "/query", + "url_options": { + "body_content_type": "application/json", + "body_type": "raw", + "data": "{\n \"targets\": [\n { \"refId\": \"B\", \"target\": \"quarkus.Rest.resourceMethod\", \"type\": \"timeserie\" }\n ],\n \"range\": { \"from\": \"${__timeFrom:date}\", \"to\": \"${__timeTo:date}\" }\n}", "method": "POST" } } @@ -3002,23 +3071,14 @@ "title": "Quarkus REST Timeseries", "transformations": [ { - "id": "calculateField", + "id": "joinByField", "options": { - "alias": "quarkus.Rest.duration", - "binary": { - "left": "quarkus.Rest.duration", - "operator": "/", - "right": "10" - }, - "mode": "binary", - "reduce": { - "reducer": "sum" - }, - "replaceFields": true + "byField": "timestamp", + "mode": "outer" } } ], - "type": "timeseries" + "type": "xychart" }, { "fieldConfig": { From eb09c939ff3418826ce0bd154ebe024a3f7f3005 Mon Sep 17 00:00:00 2001 From: Andrew Azores Date: Fri, 5 Sep 2025 09:04:06 -0400 Subject: [PATCH 15/15] colour points by duration --- dashboards/main.dashboard.json | 29 ++++++++++++++--------------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/dashboards/main.dashboard.json b/dashboards/main.dashboard.json index 66f9dd6..f131dd6 100644 --- a/dashboards/main.dashboard.json +++ b/dashboards/main.dashboard.json @@ -1470,8 +1470,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -1585,8 +1584,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -1694,8 +1692,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -1808,8 +1805,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -2069,8 +2065,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -2666,7 +2661,8 @@ "mode": "absolute", "steps": [ { - "color": "green" + "color": "green", + "value": null }, { "color": "red", @@ -2682,7 +2678,7 @@ "h": 6, "w": 10, "x": 0, - "y": 57 + "y": 26 }, "id": 28, "options": { @@ -2806,7 +2802,8 @@ "mode": "absolute", "steps": [ { - "color": "green" + "color": "green", + "value": null }, { "color": "red", @@ -2822,7 +2819,7 @@ "h": 6, "w": 10, "x": 10, - "y": 57 + "y": 26 }, "id": 29, "options": { @@ -2891,7 +2888,8 @@ "fieldConfig": { "defaults": { "color": { - "mode": "palette-classic" + "mode": "continuous-GrYlRd", + "seriesBy": "last" }, "custom": { "axisBorderShow": false, @@ -2954,6 +2952,7 @@ "series": [ { "pointColor": { + "field": "duration A", "fixed": "dark-green" }, "pointSize": {