time_measurement_timeline/README.md
2026-02-14 15:32:04 +00:00

78 lines
No EOL
3.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

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.

# Time Measurement Timeline
## Überblick
Das Projekt *time_measurement_timeline* zielt darauf ab, Zeitstempel für verschiedene Phasen eines Upload-Prozesses zu erfassen und zu analysieren. Ziel ist es, Vertrauen in die Datenkonsistenz und Verfügbarkeit sicherzustellen, indem Latenzen und mögliche zeitliche Abweichungen gemessen und dokumentiert werden.
**Link zum Artikel:** [https://donau2space.de/tag-149-drei-zeitstempel-gegen-den-phantom-missing-ich-baue-mir-eine-timeline/](https://donau2space.de/tag-149-drei-zeitstempel-gegen-den-phantom-missing-ich-baue-mir-eine-timeline/)
**Git Repository:** [https://git.donau2space.de/Mika/time_measurement_timeline](https://git.donau2space.de/Mika/time_measurement_timeline)
## 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.
## Inhalt des Repositories
Das Repository enthält drei Python-Skripte zur Erfassung, Berechnung und Analyse von Zeitstempeln und Latenzen:
### 1. timestamp_logger
- **Art:** python_script
- **Ziel:** linux-userspace
- **Sprache:** Python
- **Zweck:** Erfasst Zeitstempel für definierte Ereignisse während eines Upload-Prozesses und speichert diese in einer JSONL-Datei.
- **API-Funktion:**
- `log_timestamps(t_publish, t_gate_read, t_index_visible)` Protokolliert Zeitstempel und gibt `True` bei erfolgreichem Logging zurück.
- **Datenstruktur:**
- `timestamp_entry`: JSON-Struktur mit den Feldern `t_publish`, `t_gate_read`, `t_index_visible`.
### 2. latency_calculator
- **Art:** python_script
- **Ziel:** linux-userspace
- **Sprache:** Python
- **Zweck:** Berechnet Latenzen zwischen den erfassten Zeitstempeln und erstellt grundlegende Statistiken.
- **API-Funktion:**
- `calculate_latency(timestamp_entry)` Liefert ein Dictionary mit p50-, p95- und max-Latenzwerten.
- **Datenstruktur:**
- `latency_statistics`: JSON-Struktur mit den Feldern `p50`, `p95`, `max`.
### 3. drift_detector
- **Art:** python_script
- **Ziel:** linux-userspace
- **Sprache:** Python
- **Zweck:** Erkennt zeitliche Drift in den aufgezeichneten Datensätzen und klassifiziert sie.
- **API-Funktion:**
- `detect_drift(path)` Analysiert Dateien auf Abweichungen und gibt `True` bei erkannter Drift zurück.
- **Datenstruktur:**
- `drift_signature`: JSON-Struktur mit den Feldern `normalized_path`, `original_path`, `is_drift`.
## Installation & Nutzung
Voraussetzung ist eine funktionierende Python-Umgebung (Version ≥ 3.8).
**Installation:**
1. Repository klonen:
`git clone https://git.donau2space.de/Mika/time_measurement_timeline`
2. Abhängigkeiten installieren:
`pip install -r requirements.txt`
**Ausführung:**
- Zeitstempel erfassen:
`python timestamp_logger.py`
- Latenzen berechnen:
`python latency_calculator.py`
- Drift erkennen:
`python drift_detector.py`
## Typische Use-Cases
- Überwachung der Verarbeitungslatenz in Upload-Prozessen
- Validierung der Konsistenz verteilt gespeicherter Daten
- Erkennung von Laufzeitverschiebungen (Drift) bei zeitabhängigen Systemen.
## Struktur & mögliche Erweiterungen
- Klare Trennung zwischen Erfassung (Logger), Auswertung (Calculator) und Analyse (Drift Detector)
- Erweiterbar um zusätzliche Metrik-Module wie Ausreißererkennung oder Visualisierung
- Möglichkeit, Datenquellen zu abstrahieren oder zentrale Log-Datenbanken anzubinden.
## Lizenz
Dieses Projekt steht unter der **MIT-Lizenz**.
Die Inhalte wurden automatisch durch KI erzeugt. Nutzung und Weiterverwendung erfolgen auf eigene Verantwortung.