diff --git a/monitoring-datenfluss.md b/monitoring-datenfluss.md
index bd76c95..1a8bf86 100644
--- a/monitoring-datenfluss.md
+++ b/monitoring-datenfluss.md
@@ -1,60 +1,51 @@
# CK Monitoring — Messpunkte, Methoden & Darstellung
Übersicht: **was** wird **wo** **wie** gemessen und **wo** dargestellt.
-Stand 2026-06-22 (4. Messpunkt NAS-CRK-02 / Ruhrstr. ergänzt).
+Stand 2026-06-23 (NAS-CRK-02 Ruhrstr. mit blackbox + smokeping).
-## 1. Gesamtbild — vom Messpunkt zur Anzeige
+## 1. Datenfluss — vom Messpunkt zur Anzeige
+
+Kurze Kantenbeschriftungen bewusst gehalten (Details siehe Matrix unten), damit es in der Gitea-Web-Ansicht sauber rendert.
```mermaid
-flowchart LR
- %% ===================== MESSPUNKTE =====================
- subgraph StdA["Standort A · Pferdebachstr · 10.128.40.x"]
- XGS40["Sophos XGS-40"]
- rpp1["rpp1 (Raspberry Pi)
blackbox :9115
snmp :9116
node :9100
rsyslog-Relay"]
+flowchart TB
+ subgraph A["Standort A · Pferdebachstr (40er)"]
+ XGS40["XGS-40"]
+ rpp1["rpp1
Probe + Syslog-Relay"]
end
- subgraph StdB["Standort B · Ruhrstr · 10.128.30.x"]
- XGS30["Sophos XGS-30"]
- NAS["NAS-CRK-02 (Synology DS925+)
blackbox :9115 (Docker)
seit 22.06.2026"]
+ subgraph B["Standort B · Ruhrstr (30er)"]
+ XGS30["XGS-30"]
+ NAS["NAS-CRK-02
Probe: blackbox + smokeping"]
end
- subgraph Heim["Heimnetz / Referenz · 192.168.178.x"]
- Pi5["raspip5
blackbox :9115
node · fritzbox · sungrow"]
- end
- subgraph Ext["Externe Sicht (vom VPS)"]
- Gatus["Gatus — 14 Endpunkt-Checks"]
+ subgraph H["Heimnetz (Referenz)"]
+ Pi5["raspip5
Probe"]
end
- %% ===================== SAMMLUNG (VPS) =====================
- subgraph VPS["VPS sck-debian-nbg — Monitoring-Stack"]
- Prom[("Prometheus")]
- Loki[("Loki / Promtail")]
- AM["Alertmanager"]
- end
+ Prom[("Prometheus")]
+ Loki[("Loki")]
+ Graf["Grafana"]
+ AM["Alertmanager"]
+ Push["ntfy + E-Mail"]
- %% ===================== DARSTELLUNG =====================
- subgraph Graf["Grafana"]
- KLV["KLV-Dashboard
40er ↔ 30er (symmetrisch)"]
- Netz["Netzwerk · Standorte · System
(XGS, WLAN-APs, Syslog, Latenz, PV)"]
- end
- ntfy["ntfy-ak (Push)"]
- GMX["GMX (E-Mail)"]
-
- %% ===================== FLÜSSE =====================
- rpp1 -. "HTTP/ICMP/DNS/DNS-MS · SNMP XGS-40+30 · AP-Ping 40er" .-> Prom
- NAS -. "HTTP/ICMP/DNS · AP-Ping 30er (lokal)" .-> Prom
- Pi5 -. "HTTP/ICMP/DNS (Referenz) · Host/PV/FritzBox" .-> Prom
- Gatus --> Prom
-
- XGS40 == "Syslog" ==> rpp1 == "TCP 5514" ==> Loki
- XGS30 == "Syslog UDP 1514" ==> Loki
-
- Prom --> KLV
- Prom --> Netz
- Loki --> Netz
+ rpp1 -->|Metriken| Prom
+ NAS -->|Metriken| Prom
+ Pi5 -->|Metriken| Prom
+ XGS40 -. SNMP .-> rpp1
+ XGS30 -. SNMP .-> rpp1
+ XGS40 -->|Syslog| rpp1
+ rpp1 -->|Syslog| Loki
+ XGS30 -->|Syslog| Loki
+ Prom --> Graf
+ Loki --> Graf
Prom --> AM
- AM -->|Push| ntfy
- AM -->|E-Mail| GMX
+ AM --> Push
```
+> **Bezug der beiden Standorte zueinander** (wichtig, weil *nicht* symmetrisch):
+> - **Lokal je Standort:** blackbox-Probes (Internet/MS/DNS/APs), beim 30er zusätzlich smokeping.
+> - **Cross-Site:** Die **Firewall-SNMP beider** XGS (auch die des 30er) holt **rpp1** am Standort A — der NAS macht *kein* SNMP.
+> - **Syslog:** 40er läuft **über rpp1** zum VPS, 30er geht **direkt** zum VPS.
+
## 2. Messmatrix — was / wo / wie / Darstellung
| Messung | Wo (Messpunkt) | Wie (Methode / Job) | Ziele | Dargestellt in |
@@ -63,51 +54,40 @@ flowchart LR
| Microsoft Cloud erreichbar | Std A · Std B · Heim | blackbox `http_2xx` | login.microsoftonline, Business Central, CRM, Outlook | KLV, „Microsoft Cloud Services" |
| DNS-Auflösung | Std A · Std B · Heim | blackbox `dns_resolve` / `dns_ms_*` | XGS-40/30 :53, Google, FritzBox | KLV, DNS-Panels |
| Internet-Tempo | Std A · Std B · Heim | blackbox HTTP-Dauer | www.google.com | KLV (Gauge) |
-| WAN-Auslastung | XGS-40 · XGS-30 | SNMP (rpp1 :9116) `ifHCInOctets` Port1 | beide Firewalls | KLV, „Sophos XGS Firewall" |
+| WAN-Auslastung | XGS-40 · XGS-30 | **SNMP von rpp1** (`:9116`) `ifHCInOctets` Port1 | beide Firewalls | KLV, „Sophos XGS Firewall" |
| WLAN-APs online | 40er: von rpp1 · 30er: **lokal vom NAS** | blackbox `icmp_ping` | 5 APs (40er) · 8 APs (30er) | KLV, „Sophos WLAN Access Points" |
-| WAN-Stabilität / VoIP-Microcuts | Std B (NAS) | **smokeping_prober** (Dauer-Ping 1/s, Hop-Leiter) | 10.128.30.1 → 192.168.178.1 → 8.8.8.8/1.1.1.1/9.9.9.9 | „Ruhrstr WAN-Stabilität" + ntfy-Alarm `ruhrstr_wan` |
-| Host-Metriken | rpp1 · Pi5 · VPS | node-exporter :9100 | CPU/RAM/Disk/Temp | „Server-Übersicht", System |
+| WAN-Stabilität / VoIP-Microcuts | Std B (NAS) | **smokeping_prober** (Dauer-Ping 1/s, Hop-Leiter) | 10.128.30.1 → 192.168.178.1 → 8.8.8.8/1.1.1.1/9.9.9.9 | „Ruhrstr WAN-Stabilität" + ntfy `ruhrstr_wan` |
+| Host-Metriken | rpp1 · Pi5 · VPS | node-exporter `:9100` | CPU/RAM/Disk/Temp | „Server-Übersicht", System |
| Firewall-Logs | XGS-40→rpp1→VPS · XGS-30→VPS | rsyslog → Promtail → Loki | Syslog (Information) | „Sophos XGS Syslog" |
| Externe Erreichbarkeit | VPS | Gatus (14 Endpunkte) | öffentliche Dienste | Homepage / Gatus |
-## 3. Standort-Symmetrie im KLV-Dashboard
+## 3. Welche Sonde speist welche KLV-Zeile
-Seit 22.06.2026 misst die 30er-Zeile mit **echten lokalen Probes vom NAS** (vorher Behelf: DNS-Abfragen gegen XGS-30, gemessen von rpp1 über den VPN). Beide Standorte werden jetzt gleichwertig erfasst:
+Die beiden KLV-Standort-Zeilen werden lokal je Standort gemessen — **außer** der WAN-Auslastung (SNMP), die für **beide** Standorte von rpp1 kommt:
```mermaid
flowchart LR
- subgraph PA["Prober Standort A · rpp1"]
- a1["blackbox-icmp-remote"]
- a2["blackbox-http-remote"]
- a3["blackbox-dns(-ms)-remote"]
- a4["blackbox-ap-ping (40er)"]
- a5["SNMP XGS-40 (Port1)"]
- end
- subgraph PB["Prober Standort B · NAS-CRK-02"]
- b1["blackbox-icmp-ruhrstr"]
- b2["blackbox-http-ruhrstr"]
- b3["blackbox-dns-ruhrstr"]
- b4["blackbox-ap-ping-ruhrstr (30er, lokal)"]
- b5["SNMP XGS-30 (Port1)"]
- end
- subgraph K["KLV-Dashboard ck-netze-klv-2026"]
- r40["Zeile 40er:
Internet · MS Cloud · Tempo · DNS · WAN · APs"]
- r30["Zeile 30er:
Internet · MS Cloud · Tempo · DNS · WAN · APs"]
- end
- a1 --> r40
- a2 --> r40
- a3 --> r40
- a4 --> r40
- a5 --> r40
- b1 --> r30
- b2 --> r30
- b3 --> r30
- b4 --> r30
- b5 --> r30
+ rpp1["rpp1 · Std A"]
+ NAS["NAS-CRK-02 · Std B"]
+
+ rpp1 --> bb40["blackbox 40er"]
+ rpp1 --> snmp40["SNMP XGS-40"]
+ rpp1 --> snmp30["SNMP XGS-30"]
+ NAS --> bb30["blackbox 30er"]
+ NAS --> smoke["smokeping 30er"]
+
+ bb40 --> R40["KLV-Zeile 40er"]
+ snmp40 --> R40
+ snmp30 --> R30["KLV-Zeile 30er"]
+ bb30 --> R30
+ smoke --> R30
```
+`snmp30` hängt am **rpp1** (Standort A), speist aber die **30er-Zeile** — das ist die einzige Cross-Site-Abhängigkeit.
+
## Hinweise
-- **Prober-Adressen:** rpp1 `10.128.40.10:9115` (+SNMP `:9116`) · NAS-CRK-02 `10.128.30.3:9115` · Pi5 `10.100.0.2:9115`. Alle werden vom VPS-Prometheus gescrapet (Std A/B über VPN).
-- **„VPS extern" ist aktuell keine Blackbox-Perspektive:** Der blackbox-exporter-Container auf dem VPS läuft (`127.0.0.1:9115`), ist aber **nicht** als Prometheus-Probe verdrahtet. Die externe Erreichbarkeitssicht liefert **Gatus**. (Offen: VPS-Blackbox als echte 4. Latenz-Perspektive verdrahten oder Container entfernen.)
-- **Quellen:** Scrape-Jobs `/data/docker/monitoring/prometheus/prometheus.yml`; NAS-Sonde `dokumentation/15_systeme/68_nas_crk02_ruhrstr.md`; KLV-Beschreibung `dokumentation/10_monitoring/06_klv_dashboard_beschreibung.md`.
+- **Prober-Adressen:** rpp1 `10.128.40.10:9115` (+SNMP `:9116`) · NAS-CRK-02 `10.128.30.3:9115` (blackbox) + `:9374` (smokeping) · Pi5 `10.100.0.2:9115`. Scrape vom VPS-Prometheus (Std A/B über VPN).
+- **„VPS extern" ist keine Blackbox-Perspektive:** Der blackbox-Container auf dem VPS läuft (`127.0.0.1:9115`), ist aber **nicht** verdrahtet. Externe Sicht = **Gatus**. (Offen: verdrahten oder Container entfernen.)
+- **Rendering:** Gitea rendert Mermaid clientseitig ohne Layout-Einstellung — saubere Darstellung kommt nur über render-freundliches Mermaid (kurze Kantenlabels, wenige mehrzeilige Knoten, `TB`-Richtung). Daher hier bewusst schlank gehalten.
+- **Quellen:** `prometheus.yml`, `alerts.yml`; `dokumentation/15_systeme/68_nas_crk02_ruhrstr.md`; `dokumentation/10_monitoring/06_klv_dashboard_beschreibung.md`.