diff --git a/hosts/idols-aquamarine/grafana/dashboards/README.md b/hosts/idols-aquamarine/grafana/dashboards/README.md index 6e4e173c..2141887a 100644 --- a/hosts/idols-aquamarine/grafana/dashboards/README.md +++ b/hosts/idols-aquamarine/grafana/dashboards/README.md @@ -17,7 +17,15 @@ 1. https://github.com/kubevirt/monitoring/tree/main/dashboards/grafana +## Loki Mixin + +An opinionated set of dashboards, alerts, and recording rules to monitor your Loki cluster. The +mixin provides a comprehensive package for monitoring Loki in production. + +1. https://github.com/grafana/loki/tree/main/production/loki-mixin-compiled/dashboards ## Databases +Requires Prometheus PostgreSQL exporter metrics. See: wrouesnel/postgres_exporter + 1. https://grafana.com/grafana/dashboards/9628-postgresql-database/ diff --git a/hosts/idols-aquamarine/grafana/dashboards/loki-mixin/loki-logs.json b/hosts/idols-aquamarine/grafana/dashboards/loki-mixin/loki-logs.json index a1cbcbe4..86c22b00 100644 --- a/hosts/idols-aquamarine/grafana/dashboards/loki-mixin/loki-logs.json +++ b/hosts/idols-aquamarine/grafana/dashboards/loki-mixin/loki-logs.json @@ -644,6 +644,98 @@ "alignLevel": null } }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "$datasource", + "fieldConfig": { + "defaults": { + "unit": "ops" + } + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 4, + "w": 3, + "x": 21, + "y": 0 + }, + "hiddenSeries": false, + "id": 42, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "nullPointMode": "null", + "options": { + "dataLinks": [] + }, + "percentage": false, + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(rate(promtail_custom_bad_words_total{cluster=\"$cluster\", exported_namespace=\"$namespace\", container=~\"$container\"}[$__rate_interval])) by (level)", + "legendFormat": "{{level}}", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "bad words", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "timeseries", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "bytes", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, { "aliasColors": {}, "bars": false,