
Rahmen für die Analyse und den Vergleich von Tests
Benchmarking-, Visualisierungs- und Analysetool
Es ermöglicht Entwicklungsteams, das Systemverhalten in Echtzeit zu verfolgen, Testausführungen zu vergleichen und Leistungseinbußen sowie Optimierungspotenziale schnell zu identifizieren. FACTs wurde für Qualitätssicherung, Performance Engineering und Release-Validierung entwickelt und wandelt Rohdaten aus Benchmarks in umsetzbare Erkenntnisse um.

Warum Fakten?
FACTs hilft Teams dabei, von reaktiven Leistungstests zu proaktiver Leistungsanalyse überzugehen und so sicherzustellen, dass jede Veröffentlichung messbar, vergleichbar und zuverlässig ist.
-
Echtzeit-Systemleistungsüberwachung
-
Dashboards zum Vergleich der Laufzeiten
-
Detaillierte Metrik-Analysen
-
Automatische Differenzberichte zwischen den Läufen
-
Integrierte visuelle Berichtserstellung
-
Unterstützung mehrerer Arbeitslasten und mehrerer Metriken
-
Anomalieerkennungsfunktionen
-
Benutzerfreundliche Filter- und Navigationsfunktionen
-
Ausführungsverlauf mit Zeitstempel und Tags
-
Exportierbare PDF/CSV-Berichte
-
Anpassbare Berichtsseiten
Funktionsübersicht
1. Berichtsseite: Laufverlauf & Übersicht
Die Berichtsseite dient als zentrale Anlaufstelle für den Zugriff auf alle zuvor ausgeführten Testläufe verschiedener Workloads. Sie zeigt eine konsolidierte, scrollbare Liste der Testausführungen zusammen mit Metadaten wie Laufname, Rechnername, Workload-Typ, Zeitstempel und Ausführungs-Tags an.

Hauptfähigkeiten:
Workload-Gruppierung: Alle Läufe werden zur besseren Nachverfolgbarkeit unter dem Workload gruppiert (z. B. SpecJbb2015-Multi).
Chronologische Sortierung: Die neuesten Durchläufe erscheinen oben, sodass die aktuellsten Testergebnisse leicht zugänglich sind.
Anzeige der Laufzeitmetadaten: Es werden Tags wie Versionsinformationen, Maschinen-ID, Laufzeitparameter und Betriebssystemdetails angezeigt.
Interaktive Navigation: Durch Klicken auf eine Lauf-ID gelangt der Benutzer sofort zu einer detaillierten Ansicht mit Diagrammen und Protokollen.
Diese Seite ist unerlässlich für QA-Teams, Entwickler und Performance-Ingenieure, die einen schnellen Überblick über Testverlauf, Ausführungsdetails und Trends im Zeitverlauf benötigen.
2. Detailanalyse einzelner Läufe
Diese Funktion bietet eine detaillierte Aufschlüsselung der während eines bestimmten Laufs erfassten Metriken. Sobald ein Lauf auf der Berichtsseite ausgewählt wurde, gelangen die Benutzer zu einer speziellen Drilldown-Oberfläche.
Hauptfähigkeiten:
Grafische Zeitstrahldiagramme: Kennzahlen wie CPU-Auslastung, Speicherverbrauch, Häufigkeit der Speicherbereinigung, Durchsatz und Latenz werden im Zeitverlauf dargestellt.
Interaktive Hover-Details: Wenn Sie mit der Maus über ein Diagramm fahren, werden zeitstempelspezifische Werte angezeigt, die nützlich sind, um Spitzen oder Einbrüche genau zu lokalisieren.
Metrik-Registerkarten: Alle Metriken sind in kategorisierte Registerkarten wie „CPU-Metriken“, „Speichermetriken“, „Anwendungsmetriken“ und „GC-Metriken“ unterteilt.
Farbliche Hervorhebungen: Anomale Werte oder überschrittene Schwellenwerte werden zur visuellen Priorisierung in Rot-/Orangetönen dargestellt.
Diese detaillierte Seite hilft Ingenieuren, Probleme auf genaue Zeitfenster einzugrenzen, das Systemverhalten mit der Arbeitslastintensität in Zusammenhang zu bringen und Engpässe während der Testausführung zu diagnostizieren.

3. Differenzansicht zwischen zwei Durchläufen
Die Diff-Funktion ermöglicht es Benutzern, zwei Testläufe auszuwählen und deren Metrikwerte direkt miteinander zu vergleichen. Dies ist besonders wertvoll für die Validierung von Softwareänderungen, Hardware-Upgrades oder Leistungsregressionstests.
Hauptfähigkeiten:
Metrikvergleich: Jede überwachte Metrik (z. B. maximale CPU-Auslastung, durchschnittlicher Durchsatz) wird verglichen und die prozentuale Differenz hervorgehoben.
Farbcodierte Deltas:
Grün: Verbesserung der Kennzahl (z. B. kürzere Reaktionszeit).
Rot: Regression (z. B. höhere CPU-Auslastung).
Grau: Unbedeutend/keine Veränderung.
Interaktive Detailansicht: Benutzer können auf jede Kennzahl klicken, um Grafiken und Daten zu erkunden.
Zusammenfassungsüberschrift: Eine Top-Zusammenfassung zeigt die Nettoverbesserung/Nettoverschlechterung im Verlauf der Testreihe.
Diese Ansicht eignet sich ideal für Release-Engineering und Benchmark-Validierung und ermöglicht eine schnelle Entscheidungsfindung hinsichtlich der Auswirkungen von Änderungen auf die Performance.
4. Intelligente Metrikansicht
Die intelligente Metrikansicht präsentiert wichtige Kennzahlen mit abgeleiteten Informationen, wie z. B. visuelle Indikatoren für Spitzenwerte, Einbrüche oder stabile Perioden.
Hauptfähigkeiten:
Metrikpriorisierung: Wichtige Metriken werden nach ihrer Wichtigkeit geordnet und oben angezeigt (z. B. CPU-Auslastung, GC-Pause).
Dynamische Farbgebung: Mithilfe intelligenter Farbgebung wird der Gesundheitszustand der Metriken auf Basis vordefinierter Schwellenwerte angezeigt.
Unterstützung für Annotationen: Benutzer oder das System kennzeichnen automatisch Ereignisse von Interesse mit Tags wie „GC-Sturm“ oder „Speicherauslastung“.
Diese Ansicht eignet sich perfekt sowohl für Anfänger als auch für erfahrene Anwender, die sich schnell einen Überblick darüber verschaffen möchten, „was gut oder schlecht läuft“, ohne jedes einzelne Diagramm untersuchen zu müssen.


5. Metrik-Overlay für vergleichende Einblicke
Diese Funktion ermöglicht es, mehrere Kennzahlen in einem einzigen Diagramm übereinanderzulegen, um Korrelationen zu identifizieren.
Hauptfähigkeiten:
Zeitsynchronisierte grafische Darstellung: Alle überlagerten Metriken teilen sich die gleiche Zeitachse.
Kreuzkorrelation: Beispiel: Eine CPU-Spitze kann mit der Speicherauslastung oder der Anzahl der Threads verglichen werden.
Interaktive Filterung: Benutzer können die Sichtbarkeit von Kennzahlen umschalten, um das Diagramm übersichtlicher zu gestalten.
Dies hilft dabei, die Ursachen zu ermitteln – ob die hohe CPU-Auslastung durch ein Speicherleck, hohe Festplatten-E/A oder Thread-Konflikte verursacht wurde.
6. Export und Anzeige tabellarischer Daten
Neben den Diagrammen werden alle Datenpunkte auch tabellarisch gespeichert und angezeigt. Jede Zeile entspricht einem Zeitstempel, jede Spalte einer Kennzahl.
Hauptfähigkeiten:
Hohe Präzision: Die Daten enthalten echte Dezimalwerte (nicht gerundet).
Exportierbarkeit: Der Export in CSV/Excel ist direkt über die Benutzeroberfläche möglich.
Sortierung und Filterung: Integrierte Optionen zum Sortieren nach Zeit oder Messwert.
Diese Ansicht ist wertvoll für Teams, die Daten in externen Tools wie Excel, Tableau oder Python analysieren möchten.
7. Rohprotokoll-Snapshot und Zeitachsensynchronisierung
Die während eines Testlaufs erfassten Protokolle werden mit dem Metrik-Zeitstrahl abgeglichen, um eine Ursachenanalyse zu ermöglichen.
Hauptfähigkeiten:
Zeitstempel-Synchronisierung: Durch Klicken auf einen Ausschlag im Metrikdiagramm werden die entsprechenden Protokolleinträge automatisch hervorgehoben.
Suchfunktion: Protokolle können mithilfe von Suchbegriffen wie „FEHLER“ oder „OOM“ gefiltert werden.
Hervorhebung des Schweregrades: Protokolle werden je nach Schweregrad farblich gekennzeichnet – Info, Warnung, Fehler, schwerwiegend.
Anwendungsfall: Ein Techniker bemerkt um 14:31 Uhr einen CPU-Spitzenwert und prüft, ob zu diesem Zeitpunkt ein OutOfMemory-Fehler oder eine GC-Pause protokolliert wurde.
8. Metrikkonfiguration & Schwellenwertoptimierung
Administratoren oder fortgeschrittene Benutzer können konfigurieren, welche Metriken überwacht werden sollen, und Schwellenwerte für Benachrichtigungen oder Kennzeichnungen festlegen.
Hauptfähigkeiten:
Benutzerdefinierte Schwellenwerte: Legen Sie Ihre eigenen Ober-/Untergrenzen für jede Metrik fest.
Alarmintegration: Verknüpfen Sie Alarme mit E-Mails, Slack oder Incident-Tools.
Arbeitslastspezifische Profile: Unterschiedliche Arbeitslasten können unterschiedliche Schwellenwerte haben (z. B. CPU-Auslastung für ML-Arbeitslasten im Vergleich zu DB-Arbeitslasten).
Dies ermöglicht die automatisierte Validierung oder das Warnen bei Leistungsfehlern.
9. Backend-Tagging- und Metadaten-Panel
Jeder Durchlauf wird mit Metadaten versehen, die aus dem System abgerufen werden, sowie mit Git-Commit-Informationen, Testparametern und Benutzereingaben.
Hauptfähigkeiten:
Rückverfolgbarkeit: Genau wissen, welche Version/Konfiguration wann ausgeführt wurde.
Tag-Suche: Filtern Sie Läufe anhand von Tags wie „release-1.1“ oder „baseline“.
Automatisch generierte Tags: Git-Commit-Hashes, Kernel-Version, CPU-Modell und mehr werden automatisch abgerufen.
Entscheidend für die Einhaltung der Vorschriften, die Reproduzierbarkeit und die postmortale Analyse.

