Skip to content

System Monitoring

Arrow Control provides real-time monitoring of your VM’s health and performance. Track CPU, memory, disk, and network usage, and manage running processes—all from your web browser.

  1. Log into Arrow Control
  2. Click Metrics in the sidebar navigation
  3. The monitoring dashboard displays with real-time data
Screenshot Coming Soon
🖥️ System metrics dashboard showing resource usage overview Screenshot

The metrics dashboard displays key system information through visual cards and graphs:

  • CPU Usage - Current processor utilization
  • Memory Usage - RAM consumption and availability
  • Disk Usage - Storage space by partition
  • Network Activity - Upload and download speeds

All metrics auto-refresh to show current system state. The refresh interval is configurable in settings.

The CPU card displays:

  • Overall usage percentage - Combined utilization across all cores
  • Per-core breakdown - Individual core utilization
  • Load averages - 1, 5, and 15 minute averages
Screenshot Coming Soon
🖥️ CPU metrics showing usage percentage and per-core breakdown Screenshot
MetricDescriptionNormal Range
Usage %Current processor utilization0-70% typical
Load Average (1m)Recent demand on CPU< number of cores
Load Average (5m)Medium-term demand< number of cores
Load Average (15m)Longer-term trend< number of cores

Note: Sustained CPU usage above 80% may indicate resource constraints. Investigate high-usage processes.

The memory card shows:

  • Total memory - Physical RAM installed
  • Used memory - Currently allocated RAM
  • Available memory - Free RAM for new processes
  • Usage percentage - Visual indicator of utilization
Screenshot Coming Soon
🖥️ Memory metrics showing total, used, and available RAM Screenshot

If swap is configured, the dashboard also displays:

  • Total swap - Configured swap space
  • Used swap - Current swap utilization
  • Swap percentage - Visual usage indicator
MetricDescriptionConsideration
UsedRAM actively in useHigh usage normal under load
AvailableMemory ready for allocationShould have buffer available
CachedData cached for performanceNot a concern—auto-managed
Swap UsedOverflow to diskHigh swap usage slows performance

The disk section displays information for each mounted partition:

  • Total capacity - Partition size
  • Used space - Consumed storage
  • Available space - Remaining capacity
  • Usage percentage - Visual fill indicator
Screenshot Coming Soon
🖥️ Disk metrics showing partition usage and available space Screenshot
Mount PointTypical Purpose
/Root filesystem
/homeUser home directories
/varVariable data, logs
/tmpTemporary files
/optInstalled applications

Warning: When disk usage exceeds 90%, system performance may degrade. Consider cleaning up files or expanding storage.

The network section shows:

  • Interface status - Active network connections
  • Upload speed - Current outbound data rate
  • Download speed - Current inbound data rate
  • Total transferred - Cumulative data since boot
Screenshot Coming Soon
🖥️ Network metrics showing interface status and data transfer rates Screenshot

Common interfaces displayed:

InterfaceDescription
eth0Primary ethernet connection
wt0Netbird VPN tunnel
loLocalhost loopback

Click the Processes tab to see all running processes with:

ColumnDescription
PIDProcess identifier
UserOwner of the process
CPU %Processor usage
Memory %RAM consumption
CommandProcess name and arguments
Screenshot Coming Soon
🖥️ Process list showing running processes with resource usage Screenshot
  • Click column headers to sort (e.g., sort by CPU% to find intensive processes)
  • Use the search box to filter by process name
  • Toggle between all processes and your user’s processes

To terminate a process:

  1. Locate the process in the list
  2. Click the Stop button in the actions column
  3. Confirm the termination

Warning: Terminating system processes can cause instability. Only terminate processes you understand. When in doubt, use the terminal with proper signals (kill -15 before kill -9).

  1. Sort by CPU % to find processes using the most processor time
  2. Sort by Memory % to find processes consuming the most RAM
  3. Investigate unfamiliar processes before terminating

The system information panel displays:

InformationDescription
HostnameVM’s network name
OS VersionLinux distribution and version
KernelLinux kernel version
ArchitectureCPU architecture (x86_64, arm64)
UptimeTime since last boot
Network InterfacesIP addresses assigned
Screenshot Coming Soon
🖥️ System information panel showing OS and hardware details Screenshot
MetricNormalInvestigateAction Needed
CPU0-70%70-85% sustained>85% sustained
Memory0-75%75-90%>90%
Disk0-80%80-90%>90%
Swap0-25%25-50%>50%
Load Average< cores= cores> cores × 1.5

The graphs show historical data to help identify patterns:

  • Sudden spikes may indicate runaway processes
  • Gradual increases may indicate growing workloads
  • Periodic patterns may indicate scheduled tasks
IssueDiagnostic Steps
High CPU usageSort processes by CPU%. Identify top consumers. Check for runaway scripts or compilation jobs.
Memory exhaustionSort processes by memory%. Look for memory leaks. Consider adding swap or upgrading RAM.
Disk space warningCheck large files with du -sh /*. Clear logs in /var/log. Remove unused tools from /opt.
Network connectivityVerify interface status. Check VPN connection. Test with ping from terminal.
Process won’t terminateTry graceful stop first. Use terminal with kill -15 PID then kill -9 PID if needed.
  • Monitor regularly - Check metrics periodically, not just when problems occur
  • Establish baselines - Know normal usage patterns for your workload
  • Investigate anomalies - Unusual spikes often indicate problems
  • Avoid terminating unknown processes - Research process names before stopping them
  • Keep disk usage below 80% - Maintain buffer space for logs and temp files
  • Watch swap usage - High swap indicates memory pressure