61 lines
No EOL
2 KiB
HTML
61 lines
No EOL
2 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="de">
|
||
<head>
|
||
<meta charset="UTF-8" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||
<title>P99 Spike Analysis Dashboard</title>
|
||
<link rel="stylesheet" href="css/style.css" />
|
||
</head>
|
||
<body>
|
||
<div class="app-shell">
|
||
<header class="app-header">
|
||
<h1>P99 Spike Analysis</h1>
|
||
<section class="filter-panel" id="filter-panel">
|
||
<form id="filter-form">
|
||
<label for="eventType">Event-Typ:</label>
|
||
<select id="eventType" name="eventType">
|
||
<option value="all">Alle</option>
|
||
<option value="migration">Migration</option>
|
||
<option value="clocksource">Clocksource-Wechsel</option>
|
||
<option value="cpu">CPU</option>
|
||
</select>
|
||
|
||
<label for="timeRange">Zeitfenster:</label>
|
||
<select id="timeRange" name="timeRange">
|
||
<option value="1h">Letzte Stunde</option>
|
||
<option value="6h">Letzte 6 Stunden</option>
|
||
<option value="24h">Letzte 24 Stunden</option>
|
||
</select>
|
||
|
||
<label for="cpuId">CPU ID:</label>
|
||
<input type="number" id="cpuId" name="cpuId" min="0" placeholder="optional" />
|
||
|
||
<button type="submit">Filter anwenden</button>
|
||
</form>
|
||
</section>
|
||
</header>
|
||
|
||
<main>
|
||
<section class="chart-container" id="chart-container">
|
||
<!-- Charts werden hier dynamisch eingefügt -->
|
||
</section>
|
||
|
||
<aside class="stats-panel" id="stats-panel">
|
||
<h2>Statistische Kennzahlen</h2>
|
||
<ul>
|
||
<li>Median: <span id="stat-median">–</span></li>
|
||
<li>P99: <span id="stat-p99">–</span></li>
|
||
<li>Δ-Tail: <span id="stat-delta">–</span></li>
|
||
<li>Spikes: <span id="stat-count">–</span></li>
|
||
</ul>
|
||
</aside>
|
||
</main>
|
||
|
||
<footer class="app-footer">
|
||
<p>© 2026 Donau2Space.de</p>
|
||
</footer>
|
||
</div>
|
||
|
||
<script type="module" src="js/main.js"></script>
|
||
</body>
|
||
</html> |