monitoring: the same situation has three different numbers

Grafana 13.2.0 shows 162 findings, 63 series, or 28 vulnerabilities depending on
what is being counted, because the same go stdlib repeats across thirteen plugin
binaries. Prometheus counts series — one per CVE, package and version per target
— so on the dashboard the jump reads 70 to 63, which is fewer, not more.

That makes my original rejection wrong twice over: I compared images with
different contents, and I compared a series count against an occurrence count.
The comment above the version line now carries all three numbers so the next
person does not repeat it, and the README says what a series actually is.
This commit is contained in:
Thore Cimbal
2026-08-21 12:00:00 +00:00
parent d68991629e
commit c7aaf388f5
2 changed files with 21 additions and 8 deletions
+9
View File
@@ -172,6 +172,15 @@ Entscheidung auch jeden **neuen** Befund an demselben Image.
entschieden — die Richtung, die auffaellt. `CveEntscheidungenUnlesbar` nennt
den Grund sofort, `CveCriticalOffen` erst nach 24h.
⚠️ **Dieselbe Lage hat je nach Zaehlweise verschiedene Zahlen.** Ein Trivy-Bericht
zaehlt **Vorkommen**, Prometheus zaehlt **Serien** — und eine Serie ist
`(CVE, Paket, installierte Fassung, Fix-Fassung)` je Ziel. Wiederholt sich
derselbe Befund ueber mehrere Binaries in einem Image, sind das viele Vorkommen
und **eine** Serie. Bei Grafana 13.2.0: 162 Vorkommen, 63 Serien, 28
verschiedene CVEs. Wer eine Fassung gegen eine andere haelt, muss auf beiden
Seiten dieselbe Zaehlweise nehmen — sonst faellt das Urteil falsch aus, wie am
2026-08-21 beim ersten Blick auf 13.x.
Pruefen: `python3 cve/test_entscheidungen.py` (15 Zusicherungen, ohne Netz) und
`docker run --rm --entrypoint promtool -v "$PWD/prometheus:/p:ro"
prom/prometheus:v3.14.0 test rules /p/alerts_test.yml`.
+12 -8
View File
@@ -199,15 +199,19 @@ services:
- loki
grafana:
# ⚠️ NICHT auf die 12er-Reihe zurueckdrehen, weil Trivy hier mehr HIGH
# meldet als dort. Ab 13.x liegen 13 Datenquellen-Plugins IM Image (12.4.9
# hatte keine): 5 Scan-Ziele werden 16, und alle 162 HIGH sitzen in diesen
# Plugin-Binaries - opentsdb, jaeger, stackdriver, tempo, cloudmonitoring,
# also Datenquellen, die wir nicht benutzen. 135 davon sind ein und
# dieselbe Go-stdlib, wiederholt ueber Binaries mit alter Toolchain.
# ⚠️ NICHT auf die 12er-Reihe zurueckdrehen, weil irgendwo eine groessere
# HIGH-Zahl steht. Ab 13.x liegen 13 Datenquellen-Plugins IM Image (12.4.9
# hatte keine): aus 5 Scan-Zielen werden 16, und die Befunde sitzen
# saemtlich in diesen Plugin-Binaries - opentsdb, jaeger, stackdriver,
# tempo, cloudmonitoring, also Datenquellen, die wir nicht benutzen.
# Der KERN von 13.2.0 traegt 0 CRITICAL und 0 HIGH; 12.4.9 trug dort 1
# und 3. Die groessere Zahl gehoert zum groesseren Image, nicht zur
# schlechteren Fassung.
# und 3.
#
# ⚠️ UND: dieselbe Lage hat drei verschiedene Zahlen, je nachdem, was man
# zaehlt - 162 Vorkommen, 63 Prometheus-Serien, 28 verschiedene CVEs.
# Dieselbe Go-stdlib wiederholt sich ueber 13 Binaries. Auf dem Dashboard
# (das Serien zaehlt) steht der Sprung als 70 -> 63, also WENIGER.
# Wer hier vergleicht, muss dieselbe Zaehlweise auf beiden Seiten nehmen.
image: grafana/grafana:13.2.0
container_name: grafana
restart: unless-stopped