Skip to content

Monitor ​

Plugin ID: gg.empostor.monitorConfig file: None — no configuration required

ReferenceWhere
ConfigurationNone
CommandsNone
Admin PanelNone
HTTP APIEndpoints

API ​

GET /api/monitor/status ​

Detailed server status for dashboards.

json
{
  "status": "running",
  "timestamp": "2026-05-23T12:00:00.0000000Z",
  "uptime_seconds": 86400,
  "uptime_display": "1d 0h 0m",
  "version": "1.0.0",
  "runtime": ".NET 8.0.0",
  "platform": "Linux 5.15.0",
  "processors": 4,
  "memory_mb": 256,
  "game_count": 3,
  "player_count": 22,
  "active_connections": 30,
  "games": [
    {
      "code": "ABCDEF",
      "state": "Started",
      "map": "Skeld",
      "player_count": 10,
      "host": "PlayerName"
    }
  ]
}
FieldTypeDescription
statusstringAlways "running" when the endpoint answers
timestampstringISO 8601 UTC timestamp
uptime_secondsnumberSeconds since the server process started
uptime_displaystringHuman-readable uptime
versionstringServer version
runtimestring.NET runtime description
platformstringOS description
processorsnumberCPU core count
memory_mbnumberWorking set memory in MB
game_countnumberTotal active games
player_countnumberPlayers currently in games
active_connectionsnumberTotal active connections
gamesarrayPer-game detail objects (see above)

GET /api/monitor/health ​

Lightweight probe for load balancers and uptime monitors. Returns HTTP 200 when healthy.

json
{
  "status": "healthy",
  "timestamp": "2026-05-23T12:00:00.0000000Z"
}

Use health as the probe

health returns a two-field payload and is far cheaper than status. Poll it at high frequency and reserve status for dashboards.

  • Player Log — persistent per-player history rather than live snapshots.
  • Admin Panel — the built-in dashboard for the same data.