From 29e485b5b606e46515ab605f77479d97d58531df Mon Sep 17 00:00:00 2001 From: christian Date: Sat, 25 May 2024 10:31:16 +0200 Subject: [PATCH] mehr Dateien --- global/docker-compose.yml | 8 +- grafana.1sttry/dashboard.json | 686 ++++++++++++++++++ grafana.1sttry/datasources.yml | 6 + grafana.1sttry/default.yaml | 8 + grafana.1sttry/docker-compose.yml | 59 ++ grafana.1sttry/docker-compose.yml.save | 50 ++ grafana.1sttry/prometheus.yml | 14 + {global => grafana}/.docker-compose.yml.swp | Bin 1024 -> 1024 bytes grafana/docker-compose.yml | 75 ++ .../alerting/1/__default__.tmpl | 53 ++ grafana/grafana-plugins/grafana.db | Bin 0 -> 1200128 bytes grafana/prometheus/prometheus.yml | 13 + 12 files changed, 971 insertions(+), 1 deletion(-) create mode 100644 grafana.1sttry/dashboard.json create mode 100644 grafana.1sttry/datasources.yml create mode 100644 grafana.1sttry/default.yaml create mode 100644 grafana.1sttry/docker-compose.yml create mode 100644 grafana.1sttry/docker-compose.yml.save create mode 100644 grafana.1sttry/prometheus.yml rename {global => grafana}/.docker-compose.yml.swp (87%) create mode 100644 grafana/docker-compose.yml create mode 100644 grafana/grafana-plugins/alerting/1/__default__.tmpl create mode 100644 grafana/grafana-plugins/grafana.db create mode 100644 grafana/prometheus/prometheus.yml diff --git a/global/docker-compose.yml b/global/docker-compose.yml index 44419ae..47f40b3 100644 --- a/global/docker-compose.yml +++ b/global/docker-compose.yml @@ -76,7 +76,9 @@ services: networks: - internal - traefik-public - + environment: + - PORTS=10010,10011 +#der zweite Port ist zum Testen und als Anzeige wie man zukünftig Erweiterungen macht gitea: image: gitea/gitea:1.21.11 container_name: gitea @@ -134,3 +136,7 @@ networks: internal: name: internal external: false + + + + diff --git a/grafana.1sttry/dashboard.json b/grafana.1sttry/dashboard.json new file mode 100644 index 0000000..cca965b --- /dev/null +++ b/grafana.1sttry/dashboard.json @@ -0,0 +1,686 @@ +{ + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": { + "type": "grafana", + "uid": "-- Grafana --" + }, + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "type": "dashboard" + } + ] + }, + "description": "Docker monitoring with Prometheus and cAdvisor", + "editable": true, + "fiscalYearStartMonth": 0, + "gnetId": 193, + "graphTooltip": 1, + "id": 3, + "links": [], + "liveNow": false, + "panels": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [ + { + "options": { + "match": "null", + "result": { + "text": "N/A" + } + }, + "type": "special" + } + ], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "none" + }, + "overrides": [] + }, + "gridPos": { + "h": 3, + "w": 8, + "x": 0, + "y": 0 + }, + "id": 7, + "links": [], + "maxDataPoints": 100, + "options": { + "colorMode": "none", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "horizontal", + "reduceOptions": { + "calcs": [ + "mean" + ], + "fields": "", + "values": false + }, + "textMode": "auto" + }, + "pluginVersion": "10.0.2", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "expr": "count(container_last_seen{image!=\"\"})", + "intervalFactor": 2, + "legendFormat": "", + "metric": "container_last_seen", + "refId": "A", + "step": 240 + } + ], + "title": "Running containers", + "transparent": true, + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [ + { + "options": { + "match": "null", + "result": { + "text": "N/A" + } + }, + "type": "special" + } + ], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "mbytes" + }, + "overrides": [] + }, + "gridPos": { + "h": 3, + "w": 8, + "x": 8, + "y": 0 + }, + "id": 5, + "links": [], + "maxDataPoints": 100, + "options": { + "colorMode": "none", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "horizontal", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "textMode": "auto" + }, + "pluginVersion": "10.0.2", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "expr": "sum(container_memory_usage_bytes{image!=\"\"})/1024/1024", + "intervalFactor": 2, + "legendFormat": "", + "metric": "container_memory_usage_bytes", + "refId": "A", + "step": 240 + } + ], + "title": "Total Memory Usage", + "transparent": true, + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [ + { + "options": { + "match": "null", + "result": { + "text": "N/A" + } + }, + "type": "special" + } + ], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 3, + "w": 8, + "x": 16, + "y": 0 + }, + "id": 6, + "links": [], + "maxDataPoints": 100, + "options": { + "colorMode": "none", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "horizontal", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "textMode": "auto" + }, + "pluginVersion": "10.0.2", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "expr": "sum(rate(container_cpu_user_seconds_total{image!=\"\"}[5m]) * 100)", + "intervalFactor": 2, + "legendFormat": "", + "metric": "container_memory_usage_bytes", + "refId": "A", + "step": 240 + } + ], + "title": "Total CPU Usage", + "transparent": true, + "type": "stat" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "decimals": 2, + "editable": true, + "error": false, + "fill": 1, + "fillGradient": 0, + "grid": {}, + "gridPos": { + "h": 7, + "w": 24, + "x": 0, + "y": 3 + }, + "hiddenSeries": false, + "id": 2, + "legend": { + "alignAsTable": true, + "avg": true, + "current": true, + "max": false, + "min": false, + "rightSide": true, + "show": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "10.0.2", + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "expr": "rate(container_cpu_user_seconds_total{image!=\"\"}[5m]) * 100", + "intervalFactor": 2, + "legendFormat": "{{name}}", + "metric": "cpu", + "refId": "A", + "step": 10 + } + ], + "thresholds": [], + "timeRegions": [], + "title": "CPU Usage", + "tooltip": { + "msResolution": false, + "shared": true, + "sort": 0, + "value_type": "cumulative" + }, + "type": "graph", + "xaxis": { + "mode": "time", + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "percent", + "logBase": 1, + "show": true + }, + { + "format": "short", + "logBase": 1, + "show": true + } + ], + "yaxis": { + "align": false + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "decimals": 2, + "editable": true, + "error": false, + "fill": 1, + "fillGradient": 0, + "grid": {}, + "gridPos": { + "h": 7, + "w": 24, + "x": 0, + "y": 10 + }, + "hiddenSeries": false, + "id": 1, + "legend": { + "alignAsTable": true, + "avg": true, + "current": true, + "max": false, + "min": false, + "rightSide": true, + "show": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "10.0.2", + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "expr": "container_memory_usage_bytes{image!=\"\"}", + "hide": false, + "intervalFactor": 2, + "legendFormat": "{{name}}", + "metric": "container_memory_usage_bytes", + "refId": "A", + "step": 10 + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Memory Usage", + "tooltip": { + "msResolution": false, + "shared": true, + "sort": 0, + "value_type": "cumulative" + }, + "type": "graph", + "xaxis": { + "mode": "time", + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "bytes", + "label": "", + "logBase": 1, + "show": true + }, + { + "format": "short", + "logBase": 1, + "show": false + } + ], + "yaxis": { + "align": false + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editable": true, + "error": false, + "fill": 1, + "fillGradient": 0, + "grid": {}, + "gridPos": { + "h": 7, + "w": 12, + "x": 0, + "y": 17 + }, + "hiddenSeries": false, + "id": 3, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "10.0.2", + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "expr": "irate(container_network_receive_bytes_total{image!=\"\"}[5m])", + "intervalFactor": 2, + "legendFormat": "{{name}}", + "metric": "container_network_receive_bytes_total", + "refId": "A", + "step": 20 + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Network Rx", + "tooltip": { + "msResolution": false, + "shared": true, + "sort": 0, + "value_type": "cumulative" + }, + "type": "graph", + "xaxis": { + "mode": "time", + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "Bps", + "logBase": 1, + "show": true + }, + { + "format": "short", + "logBase": 1, + "show": true + } + ], + "yaxis": { + "align": false + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editable": true, + "error": false, + "fill": 1, + "fillGradient": 0, + "grid": {}, + "gridPos": { + "h": 7, + "w": 12, + "x": 12, + "y": 17 + }, + "hiddenSeries": false, + "id": 4, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "10.0.2", + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "expr": "irate(container_network_transmit_bytes_total{image!=\"\"}[5m])", + "intervalFactor": 2, + "legendFormat": "{{name}}", + "refId": "A", + "step": 20 + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Network Tx", + "tooltip": { + "msResolution": false, + "shared": true, + "sort": 0, + "value_type": "cumulative" + }, + "type": "graph", + "xaxis": { + "mode": "time", + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "Bps", + "logBase": 1, + "show": true + }, + { + "format": "short", + "logBase": 1, + "show": true + } + ], + "yaxis": { + "align": false + } + } + ], + "refresh": "10s", + "schemaVersion": 38, + "style": "dark", + "tags": [ + "docker" + ], + "templating": { + "list": [] + }, + "time": { + "from": "now-5m", + "to": "now" + }, + "timepicker": { + "refresh_intervals": [ + "5s", + "10s", + "30s", + "1m", + "5m", + "15m", + "30m", + "1h", + "2h", + "1d" + ], + "time_options": [ + "5m", + "15m", + "1h", + "6h", + "12h", + "24h", + "2d", + "7d", + "30d" + ] + }, + "timezone": "browser", + "title": "Docker Monitoring Test", + "uid": "ee75b6b8-f1c6-4ef1-9d39-fe50cc55a274", + "version": 1, + "weekStart": "" +} diff --git a/grafana.1sttry/datasources.yml b/grafana.1sttry/datasources.yml new file mode 100644 index 0000000..0432f9f --- /dev/null +++ b/grafana.1sttry/datasources.yml @@ -0,0 +1,6 @@ +datasources: + - name: prometheus + type: prometheus + url: http://localhost:9090 + access: proxy + isDefault: true diff --git a/grafana.1sttry/default.yaml b/grafana.1sttry/default.yaml new file mode 100644 index 0000000..cd2e446 --- /dev/null +++ b/grafana.1sttry/default.yaml @@ -0,0 +1,8 @@ +apiVersion: 1 + +providers: +- name: Default # A uniquely identifiable name for the provider + folder: Services # The folder where to place the dashboards + type: file + options: + path: /var/lib/grafana/dashboards/dashboard.json diff --git a/grafana.1sttry/docker-compose.yml b/grafana.1sttry/docker-compose.yml new file mode 100644 index 0000000..d602b6f --- /dev/null +++ b/grafana.1sttry/docker-compose.yml @@ -0,0 +1,59 @@ +version: "3" +services: + cadvisor: + container_name: cadvisor + image: gcr.io/cadvisor/cadvisor:latest + network_mode: "host" + ports: + - "9095:9095" + command: + - '-port=9095' + volumes: + - "/:/rootfs" + - "/var/run:/var/run" + - "/sys:/sys" + - "/var/lib/docker/:/var/lib/docker" + - "/dev/disk/:/dev/disk" + privileged: true + devices: + - "/dev/kmsg" + + prometheus: + container_name: prometheus + image: prom/prometheus:latest + network_mode: "host" + ports: + - "9091:9090" + volumes: + - "./prometheus.yml:/etc/prometheus/prometheus.yml" + privileged: true + depends_on: + - cadvisor + + grafana: + container_name: grafana + image: grafana/grafana:latest +# network_mode: "host" + ports: + - 3000:3000 + environment: + - GF_PATHS_PROVISIONING=/etc/grafana/provisioning + - DS_PROMETHEUS=prometheus + volumes: + - "grafana-data:/var/lib/grafana" + - "./datasources.yml:/etc/grafana/provisioning/datasources/datasources.yml" + - "./dashboard.json:/var/lib/grafana/dashboards/dashboard.json" + - "./default.yaml:/etc/grafana/provisioning/dashboards/default.yaml" + privileged: true + depends_on: + - prometheus + networks: + - test + + +volumes: + grafana-data: + +networks: + test: + name: testnetwork diff --git a/grafana.1sttry/docker-compose.yml.save b/grafana.1sttry/docker-compose.yml.save new file mode 100644 index 0000000..28edea4 --- /dev/null +++ b/grafana.1sttry/docker-compose.yml.save @@ -0,0 +1,50 @@ +version: "3" +services: + cadvisor: + container_name: cadvisor + image: gcr.io/cadvisor/cadvisor:latest + network_mode: "host" + ports: + - "8090:8080" + volumes: + - "/:/rootfs" + - "/var/run:/var/run" + - "/sys:/sys" + - "/var/lib/docker/:/var/lib/docker" + - "/dev/disk/:/dev/disk" + privileged: true + devices: + - "/dev/kmsg" + + prometheus: + container_name: prometheus + image: prom/prometheus:latest + network_mode: "host" + ports: + - "9090:9090" + volumes: + - "./prometheus.yml:/etc/prometheus/prometheus.yml" + privileged: true + depends_on: + - cadvisor + + grafana: + container_name: grafana + image: grafana/grafana:latest + network_mode: "host" + ports: + - "8092:3000" + environment: + - GF_PATHS_PROVISIONING=/etc/grafana/provisioning + - DS_PROMETHEUS=prometheus + volumes: + - "grafana-data:/var/lib/grafana" + - "./datasources.yml:/etc/grafana/provisioning/datasources/datasources.yml" + - "./dashboard.json:/var/lib/grafana/dashboards/dashboard.json" + - "./default.yaml:/etc/grafana/provisioning/dashboards/default.yaml" + privileged: true + depends_on: + - prometheus + +volumes: + grafana-data: diff --git a/grafana.1sttry/prometheus.yml b/grafana.1sttry/prometheus.yml new file mode 100644 index 0000000..eff0b22 --- /dev/null +++ b/grafana.1sttry/prometheus.yml @@ -0,0 +1,14 @@ +global: + scrape_interval: 15s #Scrape interval to every 15 seconds. + evaluation_interval: 15s #Evaluate rules every 15 seconds. + +scrape_configs: + - job_name: "prometheus" + # metrics_path defaults to '/metrics' + static_configs: + - targets: ["localhost:9090"] + + - job_name: "cadvisor" + static_configs: + - targets: ["localhost:9095"] + diff --git a/global/.docker-compose.yml.swp b/grafana/.docker-compose.yml.swp similarity index 87% rename from global/.docker-compose.yml.swp rename to grafana/.docker-compose.yml.swp index 1252ff416b9a7cd4e1f1667415147d17b314bddf..4a9e92a3b79d44b60696d37ce52b8deb48d6b441 100644 GIT binary patch delta 45 zcmZqRXyBM2!SSkvnV~2@zhq*gig0dXW=>vesa{5EQBiJUUY=fR@kB+@jX6`80cu|m AGynhq delta 45 zcmZqRXyBM2!Ev@jiJ>Szzhq*gig1~ck%5tkfw8fHg{h&DnSq6o;Y3BzjX6`80Wr7? A#{d8T diff --git a/grafana/docker-compose.yml b/grafana/docker-compose.yml new file mode 100644 index 0000000..7f21e69 --- /dev/null +++ b/grafana/docker-compose.yml @@ -0,0 +1,75 @@ +--- +version: '3' + +services: + mon_prometheus: + image: prom/prometheus:latest + container_name: mon_prometheus + restart: unless-stopped + volumes: + - /home/dockers/traefik/grafana/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml + depends_on: + - mon_node-exporter + - mon_cadvisor + networks: + - private + + mon_node-exporter: + image: prom/node-exporter:latest + container_name: mon_node-exporter + restart: unless-stopped + volumes: + - /proc:/host/proc:ro + - /sys:/host/sys:ro + - /:/rootfs:ro + command: + - '--path.procfs=/host/proc' + - '--path.sysfs=/host/sys' + - '--path.rootfs=/rootfs' + - '--collector.filesystem.ignored-mount-points="^(/rootfs|/host|)/(sys|proc|dev|host|etc)($$|/)"' + - '--collector.filesystem.ignored-fs-types="^(sys|proc|auto|cgroup|devpts|ns|au|fuse\.lxc|mqueue)(fs|)$$"' + networks: + - default + + mon_cadvisor: + image: gcr.io/cadvisor/cadvisor + container_name: mon_cadvisor + restart: unless-stopped + volumes: + - /:/rootfs:ro + - /var/run:/var/run:rw + - /sys:/sys:ro + - /var/lib/docker/:/var/lib/docker:ro + networks: + - private + + mon_grafana: + image: grafana/grafana:latest + container_name: mon_grafana + restart: unless-stopped + volumes: + - /home/dockers/traefik/grafana/grafana-plugins:/var/lib/grafana + user: "1000" + depends_on: + - mon_prometheus + labels: + - traefik.enable=true + - traefik.http.middlewares.moo-redirect-websecure.redirectscheme.scheme=https + - traefik.http.routers.grafana-web.rule=Host(`grafana.herrmann.es`) + - traefik.http.routers.grafana-web.entrypoints=web + - traefik.http.routers.grafana-web.middlewares=moo-redirect-websecure + - traefik.http.routers.grafana-websecure.entrypoints=websecure + - traefik.http.routers.grafana-websecure.rule=Host(`grafana.herrmann.es`) + - traefik.tags= traefik-public + - traefik.docker.network=traefik-public + - traefik.http.routers.grafana-websecure.tls=true + - traefik.http.routers.grafana-websecure.tls.certresolver=myresolver + - traefik.http.services.grafana-global.loadbalancer.server.port=3000 + networks: + - traefik-public + - private + +networks: + traefik-public: + external: true + private: diff --git a/grafana/grafana-plugins/alerting/1/__default__.tmpl b/grafana/grafana-plugins/alerting/1/__default__.tmpl new file mode 100644 index 0000000..b8633d1 --- /dev/null +++ b/grafana/grafana-plugins/alerting/1/__default__.tmpl @@ -0,0 +1,53 @@ + +{{ define "__subject" }}[{{ .Status | toUpper }}{{ if eq .Status "firing" }}:{{ .Alerts.Firing | len }}{{ if gt (.Alerts.Resolved | len) 0 }}, RESOLVED:{{ .Alerts.Resolved | len }}{{ end }}{{ end }}] {{ .GroupLabels.SortedPairs.Values | join " " }} {{ if gt (len .CommonLabels) (len .GroupLabels) }}({{ with .CommonLabels.Remove .GroupLabels.Names }}{{ .Values | join " " }}{{ end }}){{ end }}{{ end }} + +{{ define "__text_values_list" }}{{ if len .Values }}{{ $first := true }}{{ range $refID, $value := .Values -}} +{{ if $first }}{{ $first = false }}{{ else }}, {{ end }}{{ $refID }}={{ $value }}{{ end -}} +{{ else }}[no value]{{ end }}{{ end }} + +{{ define "__text_alert_list" }}{{ range . }} +Value: {{ template "__text_values_list" . }} +Labels: +{{ range .Labels.SortedPairs }} - {{ .Name }} = {{ .Value }} +{{ end }}Annotations: +{{ range .Annotations.SortedPairs }} - {{ .Name }} = {{ .Value }} +{{ end }}{{ if gt (len .GeneratorURL) 0 }}Source: {{ .GeneratorURL }} +{{ end }}{{ if gt (len .SilenceURL) 0 }}Silence: {{ .SilenceURL }} +{{ end }}{{ if gt (len .DashboardURL) 0 }}Dashboard: {{ .DashboardURL }} +{{ end }}{{ if gt (len .PanelURL) 0 }}Panel: {{ .PanelURL }} +{{ end }}{{ end }}{{ end }} + +{{ define "default.title" }}{{ template "__subject" . }}{{ end }} + +{{ define "default.message" }}{{ if gt (len .Alerts.Firing) 0 }}**Firing** +{{ template "__text_alert_list" .Alerts.Firing }}{{ if gt (len .Alerts.Resolved) 0 }} + +{{ end }}{{ end }}{{ if gt (len .Alerts.Resolved) 0 }}**Resolved** +{{ template "__text_alert_list" .Alerts.Resolved }}{{ end }}{{ end }} + + +{{ define "__teams_text_alert_list" }}{{ range . }} +Value: {{ template "__text_values_list" . }} +Labels: +{{ range .Labels.SortedPairs }} - {{ .Name }} = {{ .Value }} +{{ end }} +Annotations: +{{ range .Annotations.SortedPairs }} - {{ .Name }} = {{ .Value }} +{{ end }} +{{ if gt (len .GeneratorURL) 0 }}Source: [{{ .GeneratorURL }}]({{ .GeneratorURL }}) + +{{ end }}{{ if gt (len .SilenceURL) 0 }}Silence: [{{ .SilenceURL }}]({{ .SilenceURL }}) + +{{ end }}{{ if gt (len .DashboardURL) 0 }}Dashboard: [{{ .DashboardURL }}]({{ .DashboardURL }}) + +{{ end }}{{ if gt (len .PanelURL) 0 }}Panel: [{{ .PanelURL }}]({{ .PanelURL }}) + +{{ end }} +{{ end }}{{ end }} + + +{{ define "teams.default.message" }}{{ if gt (len .Alerts.Firing) 0 }}**Firing** +{{ template "__teams_text_alert_list" .Alerts.Firing }}{{ if gt (len .Alerts.Resolved) 0 }} + +{{ end }}{{ end }}{{ if gt (len .Alerts.Resolved) 0 }}**Resolved** +{{ template "__teams_text_alert_list" .Alerts.Resolved }}{{ end }}{{ end }} diff --git a/grafana/grafana-plugins/grafana.db b/grafana/grafana-plugins/grafana.db new file mode 100644 index 0000000000000000000000000000000000000000..72cf7ba7d5c57c955752847f57151b6237e3cc20 GIT binary patch literal 1200128 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 l9E=bMw(Tn7vPH}1$2sHm+{~u?E^+x~z literal 0 HcmV?d00001 diff --git a/grafana/prometheus/prometheus.yml b/grafana/prometheus/prometheus.yml new file mode 100644 index 0000000..ab13462 --- /dev/null +++ b/grafana/prometheus/prometheus.yml @@ -0,0 +1,13 @@ +global: + scrape_interval: 15s + evaluation_interval: 15s +rule_files: +scrape_configs: + - job_name: 'node-exporter' + static_configs: + - targets: ['mon_node-exporter:9100'] + + - job_name: 'cadvisor' + static_configs: + - targets: ['mon_cadvisor:8080'] +