Skip to main content

Performance Monitoring

Mare Feature (Enhanced in Sphene)

Performance Monitoring tools help you track Sphene's performance, identify bottlenecks, and ensure smooth operation.

What It Does

Performance Monitoring provides:

  • Real-time performance metrics for sync operations
  • Connection health monitoring
  • Circuit breaker for automatic failover
  • Performance counters and timing data
  • Debug UI for detailed performance analysis

When to Use It

Use performance monitoring when:

  • Troubleshooting: Diagnose sync issues or slow performance
  • Optimization: Identify which operations are taking the most time
  • Monitoring: Keep track of Sphene's impact on game performance
  • Debugging: Investigate specific performance problems
  • Testing: Measure performance impact of changes

How It Works

Performance Collector

Tracks execution time for operations:

  • Records how long each operation takes
  • Maintains rolling lists of recent performance data
  • Automatically prunes old data to prevent memory bloat
  • Logs performance spikes in debug builds

Connection Health Monitor

Monitors your connection to the Sphene server:

  • Tracks consecutive connection failures
  • Monitors time since last successful connection
  • Provides overall health status
  • Sends notifications on connection state changes

Circuit Breaker

Prevents repeated failures:

  • Opens circuit after consecutive failures
  • Stops attempting failing operations
  • Enters half-open state to test recovery
  • Automatically resets after timeout
  • Can be manually reset if needed

Performance Counters

Detailed metrics for specific operations:

  • File transfer speeds
  • Data processing times
  • UI update frequencies
  • Network latency
  • Memory usage

Debug UI

The Status Debug UI provides detailed information:

  • Real-time performance metrics
  • Operation timing breakdown
  • Connection health statistics
  • Circuit breaker status
  • Acknowledgment metrics

Configuration

Configure performance monitoring in settings:

  • Logging level: Choose how much performance data to log
  • Counter retention: How long to keep performance data
  • Debug spikes: Enable/disable spike logging
  • Notification thresholds: When to send performance warnings

Tips

  • Check the debug UI if you notice Sphene running slowly
  • High failure rates may indicate network issues
  • Performance spikes during file transfers are normal
  • Use the circuit breaker status to understand connection issues