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