Add realtime server monitoring page#8
Open
Derrickkoko1234 wants to merge 1 commit into
Open
Conversation
Add a live monitoring view for the server running Aeroplane, modeled on Dokploy/Coolify. A new owner-only SSE endpoint streams a snapshot every 2s with CPU usage, memory, disk, Docker disk breakdown, and aggregated container block/network I/O. The Monitoring page renders these as live SVG sparklines, meters, and a Docker usage donut, reachable from a new header link on the projects page. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds a realtime server monitoring view to Aeroplane, modeled on Dokploy/Coolify's monitoring dashboards. It shows live usage of the machine running Aeroplane.
Reachable from a new owner-only Monitoring link in the projects header (
/monitoring).What it tracks
dfdocker system df(donut chart)docker statsdocker statsImplementation
src/server/monitoring.ts—collectMonitoringSnapshot()gathers all metrics with safe parsing/fallbacks (returns zeros/null when Docker ordfis unavailable).src/server/index.ts— owner-only endpoints:GET /api/system/monitoring— one-shot snapshotGET /api/system/monitoring/stream— SSE, pushes a fresh snapshot every 2s (mirrors the existing deployment/runtime log-stream pattern, with abort cleanup)src/client/pages/monitoring-page.tsx+src/client/routes/monitoring.tsx— consumes the SSE stream and renders live SVG sparklines, usage meters, and a Docker-usage donut. Block/Network I/O are charted as per-interval deltas since the docker values are cumulative. No new dependencies — charts are hand-rolled SVG to match the existing dark zinc/mono theme.src/client/api.ts—MonitoringSnapshottype +api.monitoring().Testing
npm run typecheckpassesvite buildpasses🤖 Generated with Claude Code
Summary by cubic
Adds a real-time, owner-only Monitoring page that streams server metrics via SSE and visualizes them with live charts. This gives owners quick visibility into the Aeroplane host’s CPU, memory, disk, Docker usage, and container I/O.
Written for commit d1cedd8. Summary will update on new commits.