rollout_metrics_analysis/README.md
2026-02-21 15:27:07 +00:00

91 lines
No EOL
3.7 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Rollout Metrics Analysis
## Überblick
Das Projekt **rollout_metrics_analysis** umfasst die Entwicklung eines Analyse-Tools zur Auswertung von Rollout-Daten. Ziel ist die Berechnung von statistischen Schwellenwerten (z.B. p95, Median) und die automatisierte Erstellung eines Berichts auf Basis von CSV-Daten. Die Auswertungsergebnisse werden in strukturierter Form zusammengefasst und können für Monitoring- oder Qualitätsbewertungszwecke weiterverarbeitet werden.
**Hinweis:**
Alle Inhalte wurden per KI generiert.
Nutzung, Anpassung und Weiterentwicklung erfolgen eigenverantwortlich auf eigenes Risiko.
Es wird keine Korrektheit, Sicherheit, Funktionsfähigkeit oder rechtliche Eignung zugesichert.
**Artikel:** [https://donau2space.de/tag-156-100-wolken-leichter-regen-ich-mache-aus-meinen-rollout-runs-endlich-eine-schwelle-die-man-kopieren-kann/](https://donau2space.de/tag-156-100-wolken-leichter-regen-ich-mache-aus-meinen-rollout-runs-endlich-eine-schwelle-die-man-kopieren-kann/)
**Git-Repository:** [https://git.donau2space.de/Mika/rollout_metrics_analysis](https://git.donau2space.de/Mika/rollout_metrics_analysis)
---
## Inhalt des Repositories
### 1. rollout_report_generator
**Art:** python_script
**Ziel:** linux-userspace
**Sprachen:** Python
**Zweck:** Generierung eines Rollout-Reports aus CSV-Daten in Markdown-Format.
**API-Funktion:**
- `generate_report(csv_file_path, md_file_path)` erstellt einen Markdown-Report auf Basis von Eingabedaten.
### 2. unknown_rate_whitelist
**Art:** json_dataset
**Ziel:** mixed
**Sprachen:** JSON
**Zweck:** Definition von Whitelist-Einträgen für unknown_rates.
**Datenstruktur:** `WhitelistEntry` mit Feldern `key`, `scope`, `rationale`, `added_at`, `expires_at`.
### 3. rollout_data_analysis
**Art:** python_script
**Ziel:** linux-userspace
**Sprachen:** Python
**Zweck:** Analyse der Rollout-Daten einschließlich Berechnung von p95, Median, Minimal- und Maximalwerten.
**API-Funktion:**
- `analyze_data(rollout_data)` berechnet statistische Kennzahlen aus den bereitgestellten Daten.
---
## Installation & Nutzung
### Voraussetzungen
- Linux-Umgebung mit Python  3.8
- Zugriff auf CSV-Daten der Rollout-Messungen
- Optional: JSON-Datei mit Whitelist-Einträgen
### Installation
1. Repository klonen:
`git clone https://git.donau2space.de/Mika/rollout_metrics_analysis`
2. In das Projektverzeichnis wechseln:
`cd rollout_metrics_analysis`
3. Abhängigkeiten installieren (z.B. über pip):
`pip install -r requirements.txt`
### Nutzung
1. Datenanalyse durchführen:
`python rollout_data_analysis.py input_data.csv`
2. Bericht generieren:
`python rollout_report_generator.py input_data.csv output_report.md`
3. Optional Whitelist anwenden, um unknown_rates zu filtern.
---
## Typische Use-Cases
- Bewertung der Stabilität von Software-Rollouts durch quantifizierte Metriken.
- Identifikation von Ausreißern in Rollout-Daten.
- Erstellung von Reports für technische Reviews oder interne Audits.
- Verwendung der Ergebnisse als Grundlage für automatisierte Schwellenwertsetzungen.
---
## Struktur & mögliche Erweiterungen
- **scripts/** Python-Skripte für Analyse und Report-Erstellung
- **data/** JSON- und CSV-Datensätze (z.B. Whitelists, Testdaten)
- **docs/** Generierte Markdown-Berichte und ergänzende Dokumentation
**Erweiterungspotenziale:**
- Integration in CI/CD-Pipelines für automatische Rolloutbewertung.
- Erweiterung um grafische Visualisierung der Metriken.
- Unterstützung weiterer Datenformate (z.B. Parquet, SQLite).
---
## Lizenz
Dieses Projekt steht unter der **MIT-Lizenz**.
Alle Inhalte wurden automatisiert per KI erstellt. Nutzung auf eigenes Risiko.