Add spike_visualizer/README.md
This commit is contained in:
parent
f1025216f1
commit
d475b16d77
1 changed files with 71 additions and 0 deletions
71
spike_visualizer/README.md
Normal file
71
spike_visualizer/README.md
Normal file
|
|
@ -0,0 +1,71 @@
|
|||
# Spike Visualizer
|
||||
|
||||
## Übersicht
|
||||
Der **Spike Visualizer** ist eine Weboberfläche zur interaktiven Analyse von CPU-Spikes, die aus Scheduler-Events und CPU-Migrationen abgeleitet wurden. Ziel ist es, Muster und Ausreißer in den Spike-Daten grafisch zu erkennen und mit Metriken wie *reorder_score* und *publish_rate* zu untersuchen.
|
||||
|
||||
## Ziel
|
||||
Darstellung und Exploration klassifizierter CPU-Spikes durch eine interaktive Zeitleiste. Benutzer können Filter anwenden, Metriken untersuchen und Migrationen sichtbar machen, um Systemverhalten im Zeitverlauf zu verstehen.
|
||||
|
||||
## Kernfunktionen
|
||||
- Interaktive Zeitleiste mit CPU-Spikes
|
||||
- Filtermöglichkeiten nach CPU-ID, reorder_score und Zeitfenster
|
||||
- Tooltip mit Eventdetails (publish_rate, reorder_score)
|
||||
- Optionale Einblendung von Migrationen und Eventtypen
|
||||
- Dynamisches Nachladen der Spike-Daten via API (`/api/spikes`)
|
||||
- Zusammenfassung der wichtigsten Metriken oberhalb der Grafik
|
||||
- Responsives Layout mit anpassbarer Diagrammansicht
|
||||
|
||||
## Datenfluss
|
||||
1. Beim Laden der Seite ruft das Frontend per `GET /api/spikes` Spike-Daten als JSON ab.
|
||||
2. Die Daten werden clientseitig nach CPU, Zeit und reorder_score gefiltert.
|
||||
3. D3.js visualisiert die Daten als Timeline oder Scatterplot.
|
||||
4. Benutzerinteraktionen (Filteränderung, Mouseover) aktualisieren Diagramm und Metriken in Echtzeit.
|
||||
|
||||
## API-Nutzung
|
||||
### Route: `/api/spikes`
|
||||
- **Methode:** `GET`
|
||||
- **Zweck:** Abrufen der klassifizierten CPU-Spike-Daten
|
||||
- **Optionale Parameter:**
|
||||
- `cpu_id`
|
||||
- `start_time`
|
||||
- `end_time`
|
||||
- **Erwartete Antwort:**
|
||||
```json
|
||||
[
|
||||
{
|
||||
"id": 12,
|
||||
"cpu_id": 0,
|
||||
"timestamp": 1738393200,
|
||||
"reorder_score": 0.86,
|
||||
"publish_rate": 52.7,
|
||||
"migration_flag": true
|
||||
}
|
||||
]
|
||||
```
|
||||
|
||||
## Ordnerstruktur
|
||||
```
|
||||
spike_visualizer/
|
||||
│
|
||||
├── index.html # Einstiegspunkt der Web-App
|
||||
├── css/
|
||||
│ └── style.css # Layout und Farbdefinition
|
||||
├── js/
|
||||
│ ├── app.js # Initialisierung und Visualisierung
|
||||
│ ├── api.js # Schnittstelle zu /api/spikes
|
||||
│ └── filters.js # Filterlogik und UI-Events
|
||||
└── README.md # Diese Dokumentation
|
||||
```
|
||||
|
||||
## Nutzung
|
||||
1. Projektverzeichnis aufrufen und lokalen Webserver starten.
|
||||
2. Browser öffnen und `index.html` laden.
|
||||
3. Daten werden automatisch über `/api/spikes` geladen.
|
||||
4. Filter und Interaktionen nutzen, um die Visualisierung anzupassen.
|
||||
|
||||
## Anforderungen
|
||||
- Moderner Browser mit aktiviertem JavaScript
|
||||
- Zugriff auf eine API-Instanz, die `/api/spikes` bereitstellt
|
||||
|
||||
## Lizenz und Hinweise
|
||||
© 2026 Donau2Space.de
|
||||
Loading…
Reference in a new issue