mirror of
https://gitlab.com/mangadex-pub/mangadex_at_home.git
synced 2024-01-19 02:48:37 +00:00
Merge branch 'updated-metrics' into 'master'
Update metrics configuration See merge request mangadex-pub/mangadex_at_home!75
This commit is contained in:
commit
601be44feb
|
@ -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
|
||||||
|
|
||||||
|
|
|
@ -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",
|
||||||
|
|
4228
docker/grafana/dashboards/jvm-micrometer.json
Normal file
4228
docker/grafana/dashboards/jvm-micrometer.json
Normal file
File diff suppressed because it is too large
Load diff
|
@ -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
|
||||||
}
|
}
|
||||||
|
|
1355
docker/grafana/dashboards/resilience4j.json
Normal file
1355
docker/grafana/dashboards/resilience4j.json
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue