This commit is contained in:
Mateusz Gruszczyński committed 2026-10-05 12:22:41 +02:00
1 parent e1a59f6e56
commit d168ee2afa
49 files changed
+5608 -4680

No files matched your search

+407 -71
View File
@@ -670,6 +670,174 @@
}
]
},
{
"id": 83,
"type": "timeseries",
"title": "Backend client generation",
"datasource": {
"type": "prometheus",
"uid": "${DS_PROMETHEUS}"
},
"gridPos": {
"h": 7,
"w": 8,
"x": 0,
"y": 35
},
"fieldConfig": {
"defaults": {
"unit": "short",
"custom": {
"drawStyle": "line",
"lineInterpolation": "linear",
"lineWidth": 1,
"fillOpacity": 10,
"showPoints": "never",
"spanNulls": false,
"axisPlacement": "auto"
}
},
"overrides": []
},
"options": {
"legend": {
"displayMode": "list",
"placement": "bottom",
"calcs": []
},
"tooltip": {
"mode": "multi",
"sort": "none"
}
},
"targets": [
{
"refId": "A",
"expr": "rust_proxy_backend_upstream_client_generation",
"legendFormat": "{{vhost}} / {{backend}} generation",
"range": true
},
{
"refId": "B",
"expr": "rust_proxy_backend_upstream_client_generation_requests",
"legendFormat": "{{vhost}} / {{backend}} requests",
"range": true
}
],
"description": "Current reusable upstream-client generation and the requests served by that generation."
},
{
"id": 84,
"type": "timeseries",
"title": "Backend client generation age",
"datasource": {
"type": "prometheus",
"uid": "${DS_PROMETHEUS}"
},
"gridPos": {
"h": 7,
"w": 8,
"x": 8,
"y": 35
},
"fieldConfig": {
"defaults": {
"unit": "s",
"custom": {
"drawStyle": "line",
"lineInterpolation": "linear",
"lineWidth": 1,
"fillOpacity": 10,
"showPoints": "never",
"spanNulls": false,
"axisPlacement": "auto"
}
},
"overrides": []
},
"options": {
"legend": {
"displayMode": "list",
"placement": "bottom",
"calcs": []
},
"tooltip": {
"mode": "multi",
"sort": "none"
}
},
"targets": [
{
"refId": "A",
"expr": "rust_proxy_backend_upstream_client_generation_age_seconds",
"legendFormat": "{{vhost}} / {{backend}}",
"range": true
}
],
"description": "Age of the currently active reusable upstream-client generation."
},
{
"id": 85,
"type": "timeseries",
"title": "Backend retries and rotations",
"datasource": {
"type": "prometheus",
"uid": "${DS_PROMETHEUS}"
},
"gridPos": {
"h": 7,
"w": 8,
"x": 16,
"y": 35
},
"fieldConfig": {
"defaults": {
"unit": "ops",
"custom": {
"drawStyle": "line",
"lineInterpolation": "linear",
"lineWidth": 1,
"fillOpacity": 10,
"showPoints": "never",
"spanNulls": false,
"axisPlacement": "auto"
}
},
"overrides": []
},
"options": {
"legend": {
"displayMode": "list",
"placement": "bottom",
"calcs": []
},
"tooltip": {
"mode": "multi",
"sort": "none"
}
},
"targets": [
{
"refId": "A",
"expr": "sum by (vhost,backend) (rate(rust_proxy_backend_retry_attempts_total[$__rate_interval]))",
"legendFormat": "{{vhost}} / {{backend}} retry attempts",
"range": true
},
{
"refId": "B",
"expr": "sum by (vhost,backend) (rate(rust_proxy_backend_retry_successes_total[$__rate_interval]))",
"legendFormat": "{{vhost}} / {{backend}} retry successes",
"range": true
},
{
"refId": "C",
"expr": "sum by (vhost,backend) (rate(rust_proxy_backend_upstream_client_rotations_total[$__rate_interval]))",
"legendFormat": "{{vhost}} / {{backend}} client rotations",
"range": true
}
],
"description": "Backend retry attempts/successes and reusable upstream-client rotations per second."
},
{
"id": 58,
"type": "row",
@@ -679,7 +847,7 @@
"h": 1,
"w": 24,
"x": 0,
"y": 35
"y": 42
},
"panels": []
},
@@ -695,7 +863,7 @@
"h": 5,
"w": 6,
"x": 0,
"y": 36
"y": 43
},
"fieldConfig": {
"defaults": {
@@ -739,7 +907,7 @@
"h": 5,
"w": 6,
"x": 6,
"y": 36
"y": 43
},
"fieldConfig": {
"defaults": {
@@ -783,7 +951,7 @@
"h": 5,
"w": 6,
"x": 12,
"y": 36
"y": 43
},
"fieldConfig": {
"defaults": {
@@ -827,7 +995,7 @@
"h": 5,
"w": 6,
"x": 18,
"y": 36
"y": 43
},
"fieldConfig": {
"defaults": {
@@ -871,7 +1039,7 @@
"h": 7,
"w": 8,
"x": 0,
"y": 41
"y": 48
},
"fieldConfig": {
"defaults": {
@@ -920,7 +1088,7 @@
"h": 7,
"w": 8,
"x": 8,
"y": 41
"y": 48
},
"fieldConfig": {
"defaults": {
@@ -975,7 +1143,7 @@
"h": 7,
"w": 8,
"x": 16,
"y": 41
"y": 48
},
"fieldConfig": {
"defaults": {
@@ -1024,7 +1192,7 @@
"h": 7,
"w": 8,
"x": 0,
"y": 48
"y": 55
},
"fieldConfig": {
"defaults": {
@@ -1073,7 +1241,7 @@
"h": 7,
"w": 8,
"x": 8,
"y": 48
"y": 55
},
"fieldConfig": {
"defaults": {
@@ -1122,7 +1290,7 @@
"h": 7,
"w": 8,
"x": 16,
"y": 48
"y": 55
},
"fieldConfig": {
"defaults": {
@@ -1171,7 +1339,7 @@
"h": 7,
"w": 8,
"x": 0,
"y": 55
"y": 62
},
"fieldConfig": {
"defaults": {
@@ -1220,7 +1388,7 @@
"h": 7,
"w": 8,
"x": 8,
"y": 55
"y": 62
},
"fieldConfig": {
"defaults": {
@@ -1275,7 +1443,7 @@
"h": 7,
"w": 8,
"x": 16,
"y": 55
"y": 62
},
"fieldConfig": {
"defaults": {
@@ -1312,6 +1480,174 @@
}
]
},
{
"id": 86,
"type": "timeseries",
"title": "Docker client generation",
"datasource": {
"type": "prometheus",
"uid": "${DS_PROMETHEUS}"
},
"gridPos": {
"h": 7,
"w": 8,
"x": 0,
"y": 69
},
"fieldConfig": {
"defaults": {
"unit": "short",
"custom": {
"drawStyle": "line",
"lineInterpolation": "linear",
"lineWidth": 1,
"fillOpacity": 10,
"showPoints": "never",
"spanNulls": false,
"axisPlacement": "auto"
}
},
"overrides": []
},
"options": {
"legend": {
"displayMode": "list",
"placement": "bottom",
"calcs": []
},
"tooltip": {
"mode": "multi",
"sort": "none"
}
},
"targets": [
{
"refId": "A",
"expr": "rust_proxy_docker_backend_upstream_client_generation{agent=~\"$docker_agent\",service=~\"$docker_service\"}",
"legendFormat": "{{agent}} / {{service}} / {{backend}} generation",
"range": true
},
{
"refId": "B",
"expr": "rust_proxy_docker_backend_upstream_client_generation_requests{agent=~\"$docker_agent\",service=~\"$docker_service\"}",
"legendFormat": "{{agent}} / {{service}} / {{backend}} requests",
"range": true
}
],
"description": "Current reusable upstream-client generation and requests for Docker-discovered backends."
},
{
"id": 87,
"type": "timeseries",
"title": "Docker client generation age",
"datasource": {
"type": "prometheus",
"uid": "${DS_PROMETHEUS}"
},
"gridPos": {
"h": 7,
"w": 8,
"x": 8,
"y": 69
},
"fieldConfig": {
"defaults": {
"unit": "s",
"custom": {
"drawStyle": "line",
"lineInterpolation": "linear",
"lineWidth": 1,
"fillOpacity": 10,
"showPoints": "never",
"spanNulls": false,
"axisPlacement": "auto"
}
},
"overrides": []
},
"options": {
"legend": {
"displayMode": "list",
"placement": "bottom",
"calcs": []
},
"tooltip": {
"mode": "multi",
"sort": "none"
}
},
"targets": [
{
"refId": "A",
"expr": "rust_proxy_docker_backend_upstream_client_generation_age_seconds{agent=~\"$docker_agent\",service=~\"$docker_service\"}",
"legendFormat": "{{agent}} / {{service}} / {{backend}}",
"range": true
}
],
"description": "Age of the active reusable upstream-client generation for Docker-discovered backends."
},
{
"id": 88,
"type": "timeseries",
"title": "Docker retries and rotations",
"datasource": {
"type": "prometheus",
"uid": "${DS_PROMETHEUS}"
},
"gridPos": {
"h": 7,
"w": 8,
"x": 16,
"y": 69
},
"fieldConfig": {
"defaults": {
"unit": "ops",
"custom": {
"drawStyle": "line",
"lineInterpolation": "linear",
"lineWidth": 1,
"fillOpacity": 10,
"showPoints": "never",
"spanNulls": false,
"axisPlacement": "auto"
}
},
"overrides": []
},
"options": {
"legend": {
"displayMode": "list",
"placement": "bottom",
"calcs": []
},
"tooltip": {
"mode": "multi",
"sort": "none"
}
},
"targets": [
{
"refId": "A",
"expr": "sum by (agent,service,backend) (rate(rust_proxy_docker_backend_retry_attempts_total{agent=~\"$docker_agent\",service=~\"$docker_service\"}[$__rate_interval]))",
"legendFormat": "{{agent}} / {{service}} / {{backend}} retry attempts",
"range": true
},
{
"refId": "B",
"expr": "sum by (agent,service,backend) (rate(rust_proxy_docker_backend_retry_successes_total{agent=~\"$docker_agent\",service=~\"$docker_service\"}[$__rate_interval]))",
"legendFormat": "{{agent}} / {{service}} / {{backend}} retry successes",
"range": true
},
{
"refId": "C",
"expr": "sum by (agent,service,backend) (rate(rust_proxy_docker_backend_upstream_client_rotations_total{agent=~\"$docker_agent\",service=~\"$docker_service\"}[$__rate_interval]))",
"legendFormat": "{{agent}} / {{service}} / {{backend}} client rotations",
"range": true
}
],
"description": "Retry attempts/successes and reusable upstream-client rotations for Docker-discovered backends."
},
{
"id": 16,
"type": "row",
@@ -1321,7 +1657,7 @@
"h": 1,
"w": 24,
"x": 0,
"y": 62
"y": 76
},
"panels": []
},
@@ -1337,7 +1673,7 @@
"h": 5,
"w": 6,
"x": 0,
"y": 63
"y": 77
},
"fieldConfig": {
"defaults": {
@@ -1381,7 +1717,7 @@
"h": 5,
"w": 6,
"x": 6,
"y": 63
"y": 77
},
"fieldConfig": {
"defaults": {
@@ -1425,7 +1761,7 @@
"h": 5,
"w": 6,
"x": 12,
"y": 63
"y": 77
},
"fieldConfig": {
"defaults": {
@@ -1469,7 +1805,7 @@
"h": 5,
"w": 6,
"x": 18,
"y": 63
"y": 77
},
"fieldConfig": {
"defaults": {
@@ -1513,7 +1849,7 @@
"h": 7,
"w": 12,
"x": 0,
"y": 68
"y": 82
},
"fieldConfig": {
"defaults": {
@@ -1580,7 +1916,7 @@
"h": 7,
"w": 12,
"x": 12,
"y": 68
"y": 82
},
"fieldConfig": {
"defaults": {
@@ -1647,7 +1983,7 @@
"h": 7,
"w": 12,
"x": 0,
"y": 75
"y": 89
},
"fieldConfig": {
"defaults": {
@@ -1720,7 +2056,7 @@
"h": 7,
"w": 12,
"x": 12,
"y": 75
"y": 89
},
"fieldConfig": {
"defaults": {
@@ -1766,7 +2102,7 @@
"h": 1,
"w": 24,
"x": 0,
"y": 82
"y": 96
},
"panels": []
},
@@ -1782,7 +2118,7 @@
"h": 8,
"w": 12,
"x": 0,
"y": 83
"y": 97
},
"fieldConfig": {
"defaults": {
@@ -1861,7 +2197,7 @@
"h": 8,
"w": 12,
"x": 12,
"y": 83
"y": 97
},
"fieldConfig": {
"defaults": {
@@ -1916,7 +2252,7 @@
"h": 7,
"w": 8,
"x": 0,
"y": 91
"y": 105
},
"fieldConfig": {
"defaults": {
@@ -1971,7 +2307,7 @@
"h": 7,
"w": 8,
"x": 8,
"y": 91
"y": 105
},
"fieldConfig": {
"defaults": {
@@ -2032,7 +2368,7 @@
"h": 7,
"w": 8,
"x": 16,
"y": 91
"y": 105
},
"fieldConfig": {
"defaults": {
@@ -2087,7 +2423,7 @@
"h": 7,
"w": 12,
"x": 0,
"y": 98
"y": 112
},
"fieldConfig": {
"defaults": {
@@ -2142,7 +2478,7 @@
"h": 7,
"w": 12,
"x": 12,
"y": 98
"y": 112
},
"fieldConfig": {
"defaults": {
@@ -2194,7 +2530,7 @@
"h": 1,
"w": 24,
"x": 0,
"y": 105
"y": 119
},
"panels": []
},
@@ -2210,7 +2546,7 @@
"h": 7,
"w": 8,
"x": 0,
"y": 106
"y": 120
},
"fieldConfig": {
"defaults": {
@@ -2271,7 +2607,7 @@
"h": 7,
"w": 8,
"x": 8,
"y": 106
"y": 120
},
"fieldConfig": {
"defaults": {
@@ -2326,7 +2662,7 @@
"h": 7,
"w": 8,
"x": 16,
"y": 106
"y": 120
},
"fieldConfig": {
"defaults": {
@@ -2381,7 +2717,7 @@
"h": 7,
"w": 12,
"x": 0,
"y": 113
"y": 127
},
"fieldConfig": {
"defaults": {
@@ -2448,7 +2784,7 @@
"h": 7,
"w": 12,
"x": 12,
"y": 113
"y": 127
},
"fieldConfig": {
"defaults": {
@@ -2512,7 +2848,7 @@
"h": 1,
"w": 24,
"x": 0,
"y": 120
"y": 134
},
"panels": []
},
@@ -2528,7 +2864,7 @@
"h": 7,
"w": 12,
"x": 0,
"y": 121
"y": 135
},
"fieldConfig": {
"defaults": {
@@ -2589,7 +2925,7 @@
"h": 7,
"w": 12,
"x": 12,
"y": 121
"y": 135
},
"fieldConfig": {
"defaults": {
@@ -2644,7 +2980,7 @@
"h": 7,
"w": 12,
"x": 0,
"y": 128
"y": 142
},
"fieldConfig": {
"defaults": {
@@ -2705,7 +3041,7 @@
"h": 7,
"w": 12,
"x": 12,
"y": 128
"y": 142
},
"fieldConfig": {
"defaults": {
@@ -2763,7 +3099,7 @@
"h": 1,
"w": 24,
"x": 0,
"y": 135
"y": 149
},
"panels": []
},
@@ -2779,7 +3115,7 @@
"h": 7,
"w": 12,
"x": 0,
"y": 136
"y": 150
},
"fieldConfig": {
"defaults": {
@@ -2864,7 +3200,7 @@
"h": 7,
"w": 12,
"x": 12,
"y": 136
"y": 150
},
"fieldConfig": {
"defaults": {
@@ -2910,7 +3246,7 @@
"h": 1,
"w": 24,
"x": 0,
"y": 143
"y": 157
},
"panels": []
},
@@ -2952,7 +3288,7 @@
"h": 7,
"w": 12,
"x": 0,
"y": 144
"y": 158
},
"description": "Seconds until the observed certificate notAfter timestamp.",
"targets": [
@@ -3002,7 +3338,7 @@
"h": 7,
"w": 6,
"x": 12,
"y": 144
"y": 158
},
"targets": [
{
@@ -3025,7 +3361,7 @@
"h": 7,
"w": 6,
"x": 18,
"y": 144
"y": 158
},
"fieldConfig": {
"defaults": {
@@ -3063,7 +3399,7 @@
"h": 1,
"w": 24,
"x": 0,
"y": 151
"y": 165
},
"id": 51,
"panels": [],
@@ -3133,7 +3469,7 @@
"h": 7,
"w": 8,
"x": 0,
"y": 152
"y": 166
},
"id": 52,
"options": {
@@ -3229,7 +3565,7 @@
"h": 7,
"w": 8,
"x": 8,
"y": 152
"y": 166
},
"id": 53,
"options": {
@@ -3336,7 +3672,7 @@
"h": 7,
"w": 8,
"x": 16,
"y": 152
"y": 166
},
"id": 54,
"options": {
@@ -3375,7 +3711,7 @@
"h": 1,
"w": 24,
"x": 0,
"y": 159
"y": 173
},
"id": 55,
"panels": [],
@@ -3445,7 +3781,7 @@
"h": 7,
"w": 12,
"x": 0,
"y": 160
"y": 174
},
"id": 56,
"options": {
@@ -3552,7 +3888,7 @@
"h": 7,
"w": 12,
"x": 12,
"y": 160
"y": 174
},
"id": 57,
"options": {
@@ -3605,7 +3941,7 @@
"h": 1,
"w": 24,
"x": 0,
"y": 167
"y": 181
},
"panels": []
},
@@ -3621,7 +3957,7 @@
"h": 7,
"w": 6,
"x": 0,
"y": 168
"y": 182
},
"fieldConfig": {
"defaults": {
@@ -3665,7 +4001,7 @@
"h": 7,
"w": 6,
"x": 6,
"y": 168
"y": 182
},
"fieldConfig": {
"defaults": {
@@ -3709,7 +4045,7 @@
"h": 7,
"w": 6,
"x": 12,
"y": 168
"y": 182
},
"fieldConfig": {
"defaults": {
@@ -3754,7 +4090,7 @@
"h": 7,
"w": 6,
"x": 18,
"y": 168
"y": 182
},
"fieldConfig": {
"defaults": {
@@ -3799,7 +4135,7 @@
"h": 7,
"w": 12,
"x": 0,
"y": 175
"y": 189
},
"fieldConfig": {
"defaults": {
@@ -3848,7 +4184,7 @@
"h": 7,
"w": 12,
"x": 12,
"y": 175
"y": 189
},
"fieldConfig": {
"defaults": {
@@ -3897,7 +4233,7 @@
"h": 7,
"w": 12,
"x": 0,
"y": 182
"y": 196
},
"fieldConfig": {
"defaults": {
@@ -3946,7 +4282,7 @@
"h": 7,
"w": 12,
"x": 12,
"y": 182
"y": 196
},
"fieldConfig": {
"defaults": {
@@ -3995,7 +4331,7 @@
"h": 5,
"w": 12,
"x": 0,
"y": 189
"y": 203
},
"fieldConfig": {
"defaults": {
@@ -4050,7 +4386,7 @@
"h": 5,
"w": 12,
"x": 12,
"y": 189
"y": 203
},
"fieldConfig": {
"defaults": {
@@ -4193,9 +4529,9 @@
},
"timepicker": {},
"timezone": "browser",
"title": "RustProxy 0.25.6 - Operations",
"title": "RustProxy 0.25.7 - Operations",
"uid": "rustproxy-0170",
"version": 4,
"version": 5,
"weekStart": "",
"description": "RustProxy 0.25.6 operations dashboard including bounded Traffic analytics, country and User-Agent-family visibility, and built-in Web Server traffic."
}
"description": "RustProxy 0.25.7 operations dashboard including backend client lifecycle/retry diagnostics, bounded Traffic analytics, country and User-Agent-family visibility, and built-in Web Server traffic."
}