System Monitoring
Real-time Docker container resource monitoring for the Arc database. Track CPU, memory, network, and disk I/O metrics collected every 10 seconds.
Monitoring: arc-demo Container
This dashboard monitors the Arc database container where all demo data is being ingested and queried. Performance spikes correlate with demo usage - data ingestion from vessel tracking, flight tracking, and weather monitoring, plus all queries from users viewing the demos.
Loading metrics data...
Implementation
This demo uses the Docker Engine API to collect real-time container metrics from the arc-demo container.
A Python script runs inside a Docker container with read-only access to /var/run/docker.sock, polling metrics every 10 seconds and ingesting them into Arc using MessagePack columnar format.
Metrics Collected
- •CPU Usage: Percentage utilization across all cores
- •Memory: Usage and limit in MB, percentage
- •Network I/O: Cumulative bytes received/transmitted
- •Disk I/O: Cumulative bytes read/written
Query the Data with SQL
All metrics are stored in Arc's system_monitoring.container_metrics table.
SELECT container_name, AVG(cpu_percent) as avg_cpu, AVG(memory_percent) as avg_memory, MAX(memory_usage_mb) as peak_memory_mb FROM system_monitoring.container_metrics WHERE time > NOW() - INTERVAL '1 hour' AND container_name = 'arc-demo' GROUP BY container_name;