BPT

BptServerMonitor

The BptServerMonitor component displays real-time server metrics including CPU utilization (total and per-core), GPU usage, memory consumption, network throughput, and a process list. Each metric module can be independently toggled via parameters. In Server mode, metrics are collected directly using platform-specific APIs. In WebAssembly mode, metrics are streamed from the server via a SignalR hub. Supports Dark, Light, Nvidia, and Asus ROG themes, frameless mode, and configurable refresh intervals down to 1000ms.

Monitor Parameters
Server Monitor
CPU
GPU N/A
GPU metrics unavailable on this system
Memory
Network
No active network interfaces detected
Current Configuration
📋 [+]
<BptServerMonitor
    ShowCPUMetrics="true"
    ShowGPUMetrics="true"
    ShowMemoryMetrics="true"
    ShowNetworkUsage="true"
    ShowProcessList="false"
    ShowSystemInfo="true"
    ShowServerMonitorFrame="true"
    Theme="ServerMonitorTheme.Light"
    RefreshInterval="1000"
    Width="100%"
    UseSandboxData="false"
    ShowServerLogs="false"
    />

@code {
@using Bpt.Components.Tools

// Program.cs setup (required for WebAssembly mode):
app.MapBptServerMonitorHub();

// Fields
private bool showCpu = true;
private bool showGpu = true;
private bool showMemory = true;
private bool showNetwork = true;
private bool showProcesses = false;
private bool showSystemInfo = true;
private bool showServerLogs = false;
private bool showFrame = true;
private int refreshInterval = 1000;
private string selectedWidth = "100%";
private bool useSandbox = false;

}
Program.cs Setup
using Bpt.Components.Tools;

// In your Program.cs pipeline:
app.MapBptServerMonitorHub();
Required for WebAssembly mode. Server mode works without hub registration but the hub is still recommended for WASM support.
Metrics by Platform
Windows
  • CPU: total + per-core via GetSystemTimes / NtQuerySystemInformation
  • Memory: system-wide via GlobalMemoryStatusEx
  • GPU: NVIDIA via nvidia-smi
  • Network: .NET NetworkInterface API
  • Processes: full list with CPU%
Linux
  • CPU: total + per-core via /proc/stat
  • Memory: system-wide via /proc/meminfo
  • GPU: NVIDIA via nvidia-smi
  • Network: .NET NetworkInterface API
  • Processes: full list with CPU%
macOS
  • CPU: total only (process aggregate fallback)
  • Memory: GC memory info + process working set
  • GPU: not available
  • Network: .NET NetworkInterface API
  • Processes: limited (sandbox restrictions)
An unhandled error has occurred. Reload 🗙

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please reload the page.