Skip to main content
The BitBonsai dashboard provides comprehensive system monitoring, job tracking, and performance analytics in a single unified view.
What is the dashboard? The main screen showing all your encoding activity, queue status, and system health in real-time.

Dashboard Overview

Access the dashboard at the main application page after login. The interface is organized into panels showing system health, active jobs, queue status, and performance metrics.

System Health

CPU, memory, and database status checks

Active Jobs

Real-time encoding progress tracking

Queue Status

Pending jobs and estimated completion

Performance

Throughput, savings, and efficiency metrics

Active Jobs Panel

Shows encoding tasks currently being processed across all nodes.

Job Information Display

Progress Indicators

Active jobs display real-time progress bars:
  • Green bar: Encoding progressing normally (>5 fps)
  • Yellow bar: Slow encoding (1-5 fps, CPU-only nodes)
  • Red bar: Stalled job (no progress for >10 minutes)
Example display:

Node Assignment

Each job shows which node is processing it. This helps identify:
  • Load distribution across nodes
  • Node performance differences (GPU vs CPU)
  • Potential bottlenecks (one node handling too many jobs)

Queue Status

Pending Jobs

Shows jobs waiting to be processed:

Estimated Completion Time

Calculated based on:
  1. Current throughput: Average jobs completed per hour (last 24h)
  2. Queue depth: Total jobs in QUEUED and ANALYZING stages
  3. Active workers: Number of concurrent encoding processes
Formula:
Example:

System Stats

CPU Usage

  • Current Load: 1-minute load average
  • CPU Cores: Total cores available for encoding
  • Load Ratio: Load per core (ideal: under 1.5, warning: over 1.5, critical: over 2.0)
Health Indicators:

Memory Usage

  • Used/Total: Memory consumption (e.g., 12.4 GB / 16 GB)
  • Percentage: Memory utilization (warning at >85%, critical at >95%)
  • Trend: Memory usage over time (chart)

Disk Space

Shows storage statistics for all configured library paths:
Low Disk Space: When any path exceeds 90% usage, encoding may fail if output file cannot be written. BitBonsai needs temporary space (see temporary files).

Node Status

Health Indicators

Each node displays a status badge:
  • 🟢 ONLINE: Node is healthy and accepting jobs
  • 🔴 OFFLINE: Node unreachable or not responding to health checks
  • 🟡 DEGRADED: Node online but experiencing high load or errors

Active Jobs Per Node

Track workload distribution across your encoding cluster:

Load Distribution

Shows how jobs are distributed across nodes:
  • Main node: Primary encoding node (usually GPU-accelerated)
  • Child nodes: Worker nodes for parallel processing
  • Balanced: Jobs distributed evenly based on node capacity
  • Overloaded: One node handling disproportionate workload (>2x average)
Ideal distribution:

Job History

Completed Jobs (Last 30 Days)

Shows encoding activity over the past month:

Failed Jobs

Track encoding failures to identify problematic files: Failure Categories:
  • Corrupted File: Source file is damaged or incomplete (40%)
  • Disk Space: Insufficient storage for output file (25%)
  • Codec Issues: Unsupported or proprietary codec (20%)
  • FFmpeg Errors: Encoding process crashed (10%)
  • Other: Miscellaneous errors (5%)
Auto-Retry: Failed jobs are automatically retried up to 3 times with different encoding settings before being marked as permanently failed.

Performance Metrics

Average Encode Speed (fps)

Frames per second processed by the encoding engine: Factors Affecting Speed:
  1. Resolution: 4K files encode slower than 1080p (~60% speed reduction)
  2. Codec: AV1 is ~40% slower than HEVC, HEVC is ~30% slower than H.264
  3. Bitrate: Higher bitrate source files take longer to process
  4. Concurrent Jobs: Multiple jobs share GPU/CPU resources

Storage Saved

Total space saved by re-encoding to HEVC/AV1:
Savings by Codec Conversion:

Total Encoding Time

Cumulative time spent encoding across all nodes:
  • CPU Time: Total processing time (sum of all node hours)
  • Wall Time: Real-world time elapsed (accounts for parallel processing)
  • Efficiency: CPU Time / Wall Time (ideal: close to node count)
Example:
Efficiency Indicators:
  • over 2.5x (3 nodes): Excellent parallelization
  • 1.5 to 2.5x (3 nodes): Good, some bottlenecks
  • under 1.5x (3 nodes): Poor distribution, investigate load balancing

Advanced Monitoring

Codec Distribution

See /insights/codecs endpoint for codec usage analytics:
  • Pie chart showing H.264, HEVC, AV1, VP9 distribution
  • Percentage of library using each codec
  • Helps identify remaining H.264 files to convert

Savings Trend (30-Day)

Track space savings over time:
  • Daily savings bar chart
  • Cumulative savings line graph
  • Identify encoding velocity (GB saved per day)

Node Performance Comparison

Compare encoding efficiency across nodes: Use Cases:

Health Checks

The system continuously monitors (see health check):
Overall Status: Aggregated from all health checks. Dashboard displays: - HEALTHY (green): All checks passing - WARNING (yellow): One or more warnings - CRITICAL (red): One or more critical failures

Troubleshooting Dashboard Issues

No Active Jobs Showing

Possible causes:
  1. No jobs in ENCODING stage (check queue status)
  2. All nodes offline (check node status panel)
  3. Dashboard data not refreshing (refresh browser)
Solution:

Incorrect Storage Stats

Possible causes:
  1. Library paths not configured in database
  2. NFS mounts not accessible
  3. Permission issues reading disk stats
Solution:

Stuck Progress Bars

Possible causes:
  1. Job actually stalled (no FFmpeg progress updates)
  2. WebSocket connection lost (no real-time updates)
  3. Node crashed mid-encode
Solution:
  1. Check backend logs for FFmpeg errors
  2. Refresh dashboard to reconnect WebSocket
  3. Verify node is still online in node status panel

API Endpoints

Access dashboard data programmatically: Get your JWT token from the browser’s developer tools (F12 → Application → Local Storage → token) or from the login API response. Example: Get dashboard JSON:

Understanding Jobs

Job lifecycle, statuses, and auto-healing

Troubleshooting

Fix stuck jobs, disk space, and node issues

Multi-Node Setup

Track distributed encoding performance

GPU Acceleration

Speed up encoding with hardware acceleration