82 lines
2.3 KiB
Markdown
82 lines
2.3 KiB
Markdown
# Status
|
|
|
|
Workspace reference: [`GSP-WORKSPACE.md`](../../../GSP-WORKSPACE.md)
|
|
|
|
## Purpose
|
|
|
|
Admin status page for server/node state.
|
|
|
|
## Current Status
|
|
|
|
- Functional standalone page
|
|
- Kept separate from the dashboard request path on purpose
|
|
|
|
## Dependencies
|
|
|
|
- status data
|
|
- node/server metadata
|
|
|
|
## Database Tables
|
|
|
|
- none declared in module metadata
|
|
|
|
## Agent Interaction
|
|
|
|
- reads configured remote servers from the active Panel database
|
|
- performs live agent availability checks when the status page is opened
|
|
|
|
## User Workflow
|
|
|
|
- open `Panel/server_status.php` from the dashboard when status information is needed
|
|
- refresh manually when a new check is required
|
|
|
|
## Admin Workflow
|
|
|
|
- inspect status information
|
|
|
|
## Security Concerns
|
|
|
|
- should not expose sensitive details without permissions
|
|
|
|
## Known Issues
|
|
|
|
- live remote checks may wait on agent/network timeouts, so the page must not be loaded as part of the normal dashboard request
|
|
|
|
## Missing Functionality
|
|
|
|
- async dashboard embedding if a future implementation can safely avoid blocking dashboard render
|
|
|
|
## Current Architecture
|
|
|
|
- Render file: `Panel/server_status.php`
|
|
- Dashboard entry point: `Panel/modules/dashboard/dashboard.php`
|
|
- Data source: `$db->getRemoteServers()` plus `OGPRemoteLibrary::status_chk()`
|
|
- Dashboard architecture decision: keep status checks on the separate page so the main dashboard remains responsive even when one or more remote servers are slow or unavailable
|
|
|
|
## Display Rules
|
|
|
|
- Removed the old `Hostname` column
|
|
- Keep:
|
|
- `Server Name`
|
|
- `Location / IP`
|
|
- `Status`
|
|
- `Agent Status`
|
|
- `Panel-to-server latency`
|
|
- `Last Checked`
|
|
- Latency wording must remain truthful:
|
|
- current label: `Panel-to-server latency`
|
|
- this is a server-side connectivity check from the Panel host
|
|
- it is not customer-browser latency and must not be presented as the player's ping
|
|
|
|
## Theme Notes
|
|
|
|
- The status page should visually match the active dark Panel theme
|
|
- Use responsive table wrapping for mobile widths instead of forcing a wide desktop table into the viewport
|
|
|
|
## Suggested Future Improvements
|
|
|
|
- optional browser-side latency testing only if each location has a safe public health endpoint and the implementation can remain honest about what is being measured
|
|
|
|
## Recommendation
|
|
|
|
- Keep / Improve
|