1
0
Fork 1
mirror of https://gitlab.com/mangadex-pub/mangadex_at_home.git synced 2024-01-19 02:48:37 +00:00

Update metrics configuration

This commit is contained in:
Tristan Deloche 2021-02-06 07:37:55 +00:00
parent d4d528fcdc
commit f267ef1b8b
No known key found for this signature in database
GPG key ID: B6BDB16331573E59
5 changed files with 5682 additions and 18 deletions

View file

@ -6,8 +6,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased] ## [Unreleased]
### Added ### Added
- [2021-02-06] Add Micrometer and Resilience4J dashboards to defaults [@_tde9]
### Changed ### Changed
- [2021-02-06] Use Resilience4J circuit breaker stats for upstream download panel [@_tde9]
- [2021-02-06] Set default docker GC to Shenandoah [@_tde9]
### Deprecated ### Deprecated

View file

@ -11,8 +11,7 @@ services:
- ./settings.yaml:/mangahome/settings.yaml:ro - ./settings.yaml:/mangahome/settings.yaml:ro
- ./data/cache/:/mangahome/data/ - ./data/cache/:/mangahome/data/
environment: environment:
# If your client is intended to do more than ~100rqps, it is recommended replacing -XX:+UseG1GC with -XX:+UseShenandoahGC JAVA_TOOL_OPTIONS: "-Xms1G -Xmx1G -XX:+UseShenandoahGC -Xss512K"
JAVA_TOOL_OPTIONS: "-Xms1G -Xmx1G -XX:+UseG1GC -Xss512K"
privileged: true privileged: true
command: [ command: [
"bash", "bash",

File diff suppressed because it is too large Load diff

View file

@ -17,7 +17,7 @@
"editable": false, "editable": false,
"gnetId": null, "gnetId": null,
"graphTooltip": 1, "graphTooltip": 1,
"iteration": 1611971739196, "iteration": 1612597868573,
"links": [], "links": [],
"panels": [ "panels": [
{ {
@ -1083,7 +1083,7 @@
"fill": 10, "fill": 10,
"fillGradient": 0, "fillGradient": 0,
"gridPos": { "gridPos": {
"h": 14, "h": 15,
"w": 8, "w": 8,
"x": 0, "x": 0,
"y": 12 "y": 12
@ -1193,14 +1193,19 @@
"Downloads": "dark-green", "Downloads": "dark-green",
"Duration": "super-light-green", "Duration": "super-light-green",
"IllegalStateException": "yellow", "IllegalStateException": "yellow",
"Slow calls - failed": "dark-red",
"Slow calls - successful": "yellow",
"Success": "green", "Success": "green",
"TTFB": "super-light-blue", "TTFB": "super-light-blue",
"Upstream failures": "dark-red" "Upstream failures": "dark-red",
"failed": "dark-red",
"ignored": "yellow"
}, },
"bars": true, "bars": true,
"dashLength": 10, "dashLength": 10,
"dashes": false, "dashes": false,
"datasource": "Prometheus", "datasource": "Prometheus",
"description": "This panel displays stats about upstream fetches\n\nTTFB is the time taken by upstream to start replying\n\nStatuses can be:\n- **successful** - executed with success\n- **failed** - executed but failed for some reason\n- **ignored** - to avoid spamming upstream when it's dead or suffering, the client avoids calling it many times in a row if they keep failing",
"fieldConfig": { "fieldConfig": {
"defaults": { "defaults": {
"custom": {} "custom": {}
@ -1210,7 +1215,7 @@
"fill": 8, "fill": 8,
"fillGradient": 0, "fillGradient": 0,
"gridPos": { "gridPos": {
"h": 8, "h": 9,
"w": 8, "w": 8,
"x": 8, "x": 8,
"y": 12 "y": 12
@ -1226,8 +1231,6 @@
"max": true, "max": true,
"min": true, "min": true,
"show": true, "show": true,
"sort": "max",
"sortDesc": true,
"total": false, "total": false,
"values": true "values": true
}, },
@ -1245,7 +1248,7 @@
"seriesOverrides": [ "seriesOverrides": [
{ {
"$$hashKey": "object:158", "$$hashKey": "object:158",
"alias": "Success", "alias": "successful",
"color": "#37872D" "color": "#37872D"
}, },
{ {
@ -1265,16 +1268,16 @@
"steppedLine": false, "steppedLine": false,
"targets": [ "targets": [
{ {
"expr": "sum(rate(http_client_request_latency_seconds_count{status=~\"2..\"}[$itvl]))", "expr": "sum(rate(resilience4j_circuitbreaker_calls_seconds_count{name=\"upstream\"}[$itvl])) by (kind)",
"hide": false, "hide": false,
"instant": false, "instant": false,
"interval": "$itvl", "interval": "$itvl",
"intervalFactor": 2, "intervalFactor": 2,
"legendFormat": "Success", "legendFormat": "{{ kind }}",
"refId": "A" "refId": "A"
}, },
{ {
"expr": "avg(rate(http_client_request_latency_seconds_sum[$itvl])) / avg(rate(http_client_request_latency_seconds_count[$itvl]))", "expr": "avg(rate(resilience4j_circuitbreaker_calls_seconds_sum[$itvl])) / avg(rate(resilience4j_circuitbreaker_calls_seconds_count[$itvl]))",
"interval": "", "interval": "",
"intervalFactor": 1, "intervalFactor": 1,
"legendFormat": "TTFB", "legendFormat": "TTFB",
@ -1324,6 +1327,82 @@
"alignLevel": null "alignLevel": null
} }
}, },
{
"datasource": null,
"fieldConfig": {
"defaults": {
"custom": {},
"mappings": [
{
"from": "1",
"id": 1,
"text": "Disconnected",
"to": "1000",
"type": 2,
"value": ""
},
{
"from": "0",
"id": 2,
"text": "Connected",
"to": "1",
"type": 2,
"value": ""
}
],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "dark-green",
"value": null
},
{
"color": "dark-red",
"value": 1
}
]
},
"unit": "short"
},
"overrides": []
},
"gridPos": {
"h": 4,
"w": 3,
"x": 16,
"y": 12
},
"id": 56,
"options": {
"colorMode": "background",
"graphMode": "area",
"justifyMode": "center",
"orientation": "auto",
"reduceOptions": {
"calcs": [
"mean"
],
"fields": "",
"values": false
},
"textMode": "value"
},
"pluginVersion": "7.3.7",
"targets": [
{
"expr": "sum(resilience4j_circuitbreaker_state{name=\"upstream\", state!=\"closed\"})",
"instant": true,
"interval": "",
"legendFormat": "{{ state }}",
"refId": "A"
}
],
"timeFrom": null,
"timeShift": null,
"title": "Upstream status",
"type": "stat"
},
{ {
"cacheTimeout": null, "cacheTimeout": null,
"datasource": "Prometheus", "datasource": "Prometheus",
@ -1360,8 +1439,8 @@
}, },
"gridPos": { "gridPos": {
"h": 4, "h": 4,
"w": 8, "w": 5,
"x": 16, "x": 19,
"y": 12 "y": 12
}, },
"id": 54, "id": 54,
@ -1416,7 +1495,7 @@
"fill": 10, "fill": 10,
"fillGradient": 0, "fillGradient": 0,
"gridPos": { "gridPos": {
"h": 10, "h": 11,
"w": 8, "w": 8,
"x": 16, "x": 16,
"y": 16 "y": 16
@ -1528,7 +1607,7 @@
"h": 6, "h": 6,
"w": 8, "w": 8,
"x": 8, "x": 8,
"y": 20 "y": 21
}, },
"hiddenSeries": false, "hiddenSeries": false,
"id": 49, "id": 49,
@ -1613,7 +1692,7 @@
"h": 1, "h": 1,
"w": 24, "w": 24,
"x": 0, "x": 0,
"y": 26 "y": 27
}, },
"id": 53, "id": 53,
"panels": [ "panels": [
@ -1903,5 +1982,5 @@
"timezone": "", "timezone": "",
"title": "MangaDex@Home - Personal client dashboard", "title": "MangaDex@Home - Personal client dashboard",
"uid": "a7sZAw2Mk", "uid": "a7sZAw2Mk",
"version": 4 "version": 3
} }

File diff suppressed because it is too large Load diff