Add per-server telemetry request diagnostics

This commit is contained in:
2026-09-19 18:59:30 -04:00
parent a182aeb950
commit 41891b4209
10 changed files with 614 additions and 14 deletions
+9 -1
View File
@@ -1,5 +1,6 @@
<script lang="ts">
import RoundTelemetry from '$ui/components/RoundTelemetry.svelte';
import TelemetryDiagnostics from '$ui/components/TelemetryDiagnostics.svelte';
import { pollVisible } from '$ui/poll.js';
import { fleet, fleetServers, fleetError, fleetIntegrations, refreshFleet } from '$ui/stores/fleet.js';
import { freshServer, fleetIdentity } from '$lib/fleet-overview.js';
@@ -284,7 +285,7 @@
<Tabs {tabs} bind:value={activeTab} ariaLabel="Server sections" idPrefix="server-tabs" panelId="server-panel" />
</div>
<div class="tab-panel" role="tabpanel" id="server-panel" aria-labelledby={"server-tabs-" + activeTab}>
<div class="tab-panel" class:diagnostics={activeTab === 'diagnostics'} role="tabpanel" id="server-panel" aria-labelledby={"server-tabs-" + activeTab}>
{#if tabError}<div class="ui-error" role="alert">{tabError}<Button size="sm" onclick={() => loadTab(name, activeTab)}>Retry</Button></div>{/if}
{#if activeTab === 'scoreboard'}
<Card padding="lg">
@@ -328,6 +329,9 @@
</Card>
<ListFooter total={inventory.length} bind:limit={inventoryLimit} label="files" />
{:else if activeTab === 'diagnostics'}
{#key name}
<TelemetryDiagnostics server={name} />
{/key}
<Card padding="lg">
<div class="panel-head">
<h2>RCON diagnostic</h2>
@@ -575,6 +579,10 @@
}
/* Tabs row */
.tab-panel.diagnostics {
display: grid;
gap: var(--space-6);
}
.tabs-row {
display: flex;
justify-content: center;