diff --git a/compose.yml b/compose.yml index 762f1ab..43c982d 100644 --- a/compose.yml +++ b/compose.yml @@ -37,18 +37,17 @@ services: - "traefik.http.routers.${STACK_NAME}-node.tls=true" - "traefik.http.routers.${STACK_NAME}-node.tls.certresolver=${LETS_ENCRYPT_ENV}" - "traefik.http.routers.${STACK_NAME}-node.middlewares=basicauth@file" - - "coop-cloud.${STACK_NAME}.version=0.1.0+v1.5.0" + - "coop-cloud.${STACK_NAME}.version=0.2.0+v1.5.0" - "coop-cloud.${STACK_NAME}.timeout=${TIMEOUT:-120}" cadvisor: image: gcr.io/cadvisor/cadvisor:v0.47.1 command: - "-logtostderr" - - "--enable_metrics=cpu,cpuLoad,disk,memory,network,process" + - "--enable_metrics=cpu,cpuLoad,disk,memory,network" # all possible metrics: advtcp,app,cpu,cpuLoad,cpu_topology,cpuset,disk,diskIO,hugetlb,memory,memory_numa,network,oom_event,percpu,perf_event,process,referenced_memory,resctrl,sched,tcp,udp. - "--housekeeping_interval=120s" - "--docker_only=true" - volumes: - /var/lib/docker/:/var/lib/docker:ro - /dev/disk/:/dev/disk:ro diff --git a/grafana-logs-dashboard.json b/grafana-logs-dashboard.json new file mode 100644 index 0000000..1c5a7dd --- /dev/null +++ b/grafana-logs-dashboard.json @@ -0,0 +1,344 @@ +{ + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": { + "type": "grafana", + "uid": "-- Grafana --" + }, + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "type": "dashboard" + } + ] + }, + "editable": true, + "fiscalYearStartMonth": 0, + "graphTooltip": 0, + "id": 4, + "links": [], + "liveNow": false, + "panels": [ + { + "datasource": { + "type": "loki", + "uid": "P8E80F9AEF21F6940" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + } + }, + "mappings": [] + }, + "overrides": [] + }, + "gridPos": { + "h": 11, + "w": 10, + "x": 0, + "y": 0 + }, + "id": 5, + "options": { + "displayLabels": [ + "value" + ], + "legend": { + "displayMode": "table", + "placement": "right", + "showLegend": true, + "values": [ + "value" + ] + }, + "pieType": "pie", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "tooltip": { + "mode": "single", + "sort": "asc" + } + }, + "pluginVersion": "9.5.2", + "targets": [ + { + "datasource": { + "type": "loki", + "uid": "P8E80F9AEF21F6940" + }, + "editorMode": "code", + "expr": "sum by (event)(\n count_over_time(\n {service_name=~\"sso_.+_app|login_.+_app\"} \n | json \n | level=~\"warning|error\" \n | line_format \"{{.level}} {{ .stack_namespace }} {{.remote}} {{.event}} {{ .error}}\" \n [$__interval])\n)", + "hide": false, + "legendFormat": "{{ event }}", + "queryType": "range", + "refId": "B" + } + ], + "title": "Authentik Warnings & Errors", + "type": "piechart" + }, + { + "datasource": { + "type": "loki", + "uid": "P8E80F9AEF21F6940" + }, + "gridPos": { + "h": 11, + "w": 14, + "x": 10, + "y": 0 + }, + "id": 6, + "options": { + "dedupStrategy": "numbers", + "enableLogDetails": true, + "prettifyLogMessage": false, + "showCommonLabels": false, + "showLabels": false, + "showTime": true, + "sortOrder": "Descending", + "wrapLogMessage": false + }, + "pluginVersion": "9.5.2", + "targets": [ + { + "datasource": { + "type": "loki", + "uid": "P8E80F9AEF21F6940" + }, + "editorMode": "code", + "expr": "{service_name=~\"sso_.+_app|login_.+_app\"} \n | json \n | level=~\"warning|error\" \n | line_format \"{{.level}} {{ .stack_namespace }} {{.remote}} {{.event}} {{ .error}}\" ", + "hide": false, + "legendFormat": "{{ event }}", + "queryType": "range", + "refId": "B" + } + ], + "title": "Authentik Warnings & Errors", + "type": "logs" + }, + { + "datasource": { + "type": "loki", + "uid": "P8E80F9AEF21F6940" + }, + "gridPos": { + "h": 6, + "w": 24, + "x": 0, + "y": 11 + }, + "id": 4, + "options": { + "dedupStrategy": "numbers", + "enableLogDetails": true, + "prettifyLogMessage": true, + "showCommonLabels": false, + "showLabels": false, + "showTime": true, + "sortOrder": "Descending", + "wrapLogMessage": true + }, + "targets": [ + { + "datasource": { + "type": "loki", + "uid": "P8E80F9AEF21F6940" + }, + "editorMode": "code", + "expr": "{stack_namespace=~\".+\"} |= `[pool www] server reached pm.max_children setting (5), consider raising it`", + "hide": false, + "queryType": "range", + "refId": "B" + } + ], + "title": "server reached pm.max_children setting", + "type": "logs" + }, + { + "datasource": { + "type": "loki", + "uid": "P8E80F9AEF21F6940" + }, + "gridPos": { + "h": 8, + "w": 24, + "x": 0, + "y": 17 + }, + "id": 3, + "options": { + "dedupStrategy": "signature", + "enableLogDetails": true, + "prettifyLogMessage": false, + "showCommonLabels": true, + "showLabels": false, + "showTime": false, + "sortOrder": "Descending", + "wrapLogMessage": false + }, + "targets": [ + { + "datasource": { + "type": "loki", + "uid": "P8E80F9AEF21F6940" + }, + "editorMode": "builder", + "expr": "{stack_namespace=~\"cloud_.*\"} |= `error`", + "key": "Q-309efd6a-66a9-4125-8bb2-ee64ea453563-0", + "queryType": "range", + "refId": "A" + } + ], + "title": "Nextcloud Errors", + "type": "logs" + }, + { + "datasource": { + "type": "loki", + "uid": "P8E80F9AEF21F6940" + }, + "description": "", + "gridPos": { + "h": 12, + "w": 24, + "x": 0, + "y": 25 + }, + "id": 1, + "options": { + "dedupStrategy": "numbers", + "enableLogDetails": true, + "prettifyLogMessage": false, + "showCommonLabels": true, + "showLabels": false, + "showTime": true, + "sortOrder": "Descending", + "wrapLogMessage": false + }, + "targets": [ + { + "datasource": { + "type": "loki", + "uid": "P8E80F9AEF21F6940" + }, + "editorMode": "code", + "expr": "{service_name=~\"$service\"} |= ``", + "key": "Q-185a8078-9643-4008-a994-52a67249a6ec-0", + "legendFormat": "", + "queryType": "range", + "refId": "A" + } + ], + "title": "Docker Logs", + "type": "logs" + }, + { + "datasource": { + "type": "loki", + "uid": "P8E80F9AEF21F6940" + }, + "description": "", + "gridPos": { + "h": 10, + "w": 24, + "x": 0, + "y": 37 + }, + "id": 2, + "options": { + "dedupStrategy": "exact", + "enableLogDetails": true, + "prettifyLogMessage": false, + "showCommonLabels": true, + "showLabels": false, + "showTime": true, + "sortOrder": "Descending", + "wrapLogMessage": false + }, + "targets": [ + { + "datasource": { + "type": "loki", + "uid": "P8E80F9AEF21F6940" + }, + "editorMode": "code", + "expr": "{job = \"varlogs\"} |= ``", + "key": "Q-185a8078-9643-4008-a994-52a67249a6ec-0", + "legendFormat": "", + "queryType": "range", + "refId": "A" + } + ], + "title": "Server Logs", + "type": "logs" + } + ], + "refresh": "", + "schemaVersion": 38, + "style": "dark", + "tags": [], + "templating": { + "list": [ + { + "current": { + "selected": true, + "text": [ + "All" + ], + "value": [ + "$__all" + ] + }, + "datasource": { + "type": "loki", + "uid": "P8E80F9AEF21F6940" + }, + "definition": "", + "hide": 0, + "includeAll": true, + "label": "service", + "multi": true, + "name": "service", + "options": [], + "query": { + "label": "service_name", + "refId": "LokiVariableQueryEditor-VariableQuery", + "stream": "", + "type": 1 + }, + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query" + } + ] + }, + "time": { + "from": "now-7d", + "to": "now" + }, + "timepicker": {}, + "timezone": "", + "title": "Logs", + "uid": "c87e167e-9271-4b52-922e-d9c963bfd805", + "version": 15, + "weekStart": "" +} \ No newline at end of file diff --git a/grafana_custom.ini b/grafana_custom.ini index 08a84af..29b5dc1 100644 --- a/grafana_custom.ini +++ b/grafana_custom.ini @@ -29,6 +29,5 @@ api_url = {{ env "OIDC_API_URL" }} enabled = false {{ end }} - [plugins] enable_alpha = true \ No newline at end of file