diff --git a/readme_md b/readme_md new file mode 100644 index 0000000..de958cd --- /dev/null +++ b/readme_md @@ -0,0 +1,97 @@ +# Max Only Alert Analysis + +## Überblick +Das Experiment *max_only_alert_analysis* untersucht den sogenannten „Max-only Alert“, um Ausreißer (Outlier) unter kontrollierten Bedingungen zu identifizieren und reproduzierbar zu analysieren. Es werden Python-Skripte zur Log-Analyse und statistischen Auswertung genutzt, ergänzt durch eine Web-Oberfläche zur Visualisierung. + +### 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-176-max-only-alert-scharfgeschaltet-erst-synthetisch-dann-run-21-4x-und-eine-erste-autopsy/](https://donau2space.de/tag-176-max-only-alert-scharfgeschaltet-erst-synthetisch-dann-run-21-4x-und-eine-erste-autopsy/) + +**Git Repository:** [https://git.donau2space.de/Mika/max_only_alert_analysis](https://git.donau2space.de/Mika/max_only_alert_analysis) + +--- + +## Inhalt des Repositories + +### 1. max_alert_logging +- **Art:** Python-Skript +- **Ziel:** Linux Userspace +- **Sprachen:** Python +- **Zweck:** Analysiert Logs, dedupliziert Einträge und generiert präzise Max-only Alerts. + **API-Funktionen:** + - `log_alert(corr_id, stratum, job_parallelism, expires_at_dist_hours, t_gate_read, t_index_visible, retry_taken, retry_total_overhead_ms, policy_hash, setup_fingerprint)` – Erzeugt einen Log-Eintrag und gibt `Boolean` zurück, ob der Vorgang erfolgreich war. + + **Datenstrukturen:** + - `log_entry` (JSON) – Enthält Felder für Korrelation, Stratum, Parallelität, Laufzeiten und Policy-bezogene Parameter. + +### 2. outlier_analysis +- **Art:** Python-Skript +- **Ziel:** Linux Userspace +- **Sprachen:** Python +- **Zweck:** Analysiert Log-Daten und erzeugt Outlier-Reports mit statistischen Kennzahlen. + **API-Funktionen:** + - `analyze_outliers(log_entries)` – Berechnung von Ausreißern und Rückgabe einer Liste von Outlier-Daten mit Kennwerten. + + **Datenstrukturen:** + - `outlier_report` (JSON) – Felder: mean, median, p90, p95, p99, max, clusters. + +### 3. visualization_ui +- **Art:** Web-UI +- **Ziel:** Web +- **Sprachen:** HTML, CSS, JavaScript +- **Zweck:** Darstellung der erzeugten Alerts und Analyse-Ergebnisse. + **Routen:** + - `GET /alert-data` – Liefert Max-only Alert Daten. + - `GET /outlier-report` – Liefert Outlier-Bericht zur Anzeige. + +--- + +## Voraussetzungen (Webserver) +- Installierter Webserver (z. B. Nginx oder Apache) +- Python 3.9 oder höher +- Pip-Umgebung für lokale Skriptausführung + +--- + +## Installation & Nutzung + +1. Repository klonen: + - `git clone https://git.donau2space.de/Mika/max_only_alert_analysis` +2. Verzeichnis öffnen: + - `cd max_only_alert_analysis` +3. Abhängigkeiten installieren: + - `pip install -r requirements.txt` +4. Python-Skripte ausführen: + - `python max_alert_logging.py` + - `python outlier_analysis.py` +5. Web-Oberfläche starten (lokal oder per Webserver bereitstellen). + +--- + +## Typische Use-Cases +- Analyse von Cluster-Jobs zur Identifikation von Laufzeitausreißern. +- Erzeugung und Überwachung präziser Max-only Alerts. +- Statistische Bewertung von Performance-Daten. +- Visualisierung und Reporting von Analyseergebnissen. + +--- + +## Struktur & Erweiterbarkeit +- **scripts/** – Enthält Python-Skripte für Log-Analyse und Ausreißererkennung. +- **web_ui/** – Beinhaltet HTML-, CSS- und JS-Komponenten zur Visualisierung. +- **data/** – Beispiel- und Testdaten für Analysen. + +Das Projekt kann erweitert werden durch: +- zusätzliche Statistiken und Visualisierungen, +- API-Erweiterungen zur Echtzeit-Datenerfassung, +- Integration mit externen Monitoring-Systemen. + +--- + +## Lizenz +Veröffentlicht unter der **MIT-Lizenz**. + +Alle Inhalte, einschließlich Dokumentation und Quelltexte, wurden automatisiert per KI erstellt. Nutzung erfolgt auf eigenes Risiko.