Skip to content

Closed Alpha

FluxPlay is currently in Closed Alpha. This documentation is a work in progress and may be incomplete or out of date. Features, UI, and APIs are subject to change without notice. For access inquiries, please contact [email protected].

OPENTELEMETRY

Enterprise-grade observability with native metrics and distributed tracing. Monitor FluxPlay's performance with your existing tools.

Observability Overview

FluxPlay supports OpenTelemetry, the industry standard for observability, allowing seamless integration with popular monitoring tools.

MetricsDistributed TracingLog CorrelationPrometheus CompatibleGrafana Dashboards

Available Metrics

System Metrics

  • CPU usage
  • Memory consumption
  • Disk I/O
  • Network bandwidth
  • Process uptime

Playback Metrics

  • Active streams
  • Transcode queue
  • Bitrate per stream
  • Buffer health
  • Playback errors

Download Metrics

  • Queue length
  • Download speed
  • Success rate
  • Failed downloads
  • Subscription syncs

Library Metrics

  • Total items
  • Scan duration
  • Metadata fetches
  • Image downloads
  • Identification rate

User Metrics

  • Active sessions
  • Login attempts
  • API calls/min
  • Concurrent users
  • Auth failures

Database Metrics

  • Query latency
  • Connection pool
  • Cache hit rate
  • Transaction count
  • Slow queries

Distributed Tracing

Trace requests through the entire FluxPlay stack to identify bottlenecks and debug issues.

Traced Operations

  • HTTP request handling
  • Database queries
  • Metadata provider calls
  • Transcode pipeline
  • File operations
  • Authentication flows

Trace Attributes

  • User ID and session
  • Library and item IDs
  • Client device info
  • Error details
  • Duration breakdowns
  • Dependency calls

Tool Integrations

Prometheus

Metrics collection

Metrics

Grafana

Visualization dashboards

Dashboards

Jaeger

Trace visualization

Tracing

Loki

Log aggregation

Logging

Tempo

Trace storage

Tracing

Datadog

Full-stack monitoring

APM

New Relic

Application monitoring

APM

OTLP Collector

OpenTelemetry backend

Collector

Configuration

Environment Variables

# Enable OpenTelemetry
OTEL_EXPORTER_OTLP_ENDPOINT=http://otel-collector:4317
OTEL_SERVICE_NAME=fluxplay
OTEL_TRACES_EXPORTER=otlp
OTEL_METRICS_EXPORTER=prometheus

# Prometheus metrics endpoint (enabled by default)
METRICS_ENDPOINT=/metrics
METRICS_PORT=9090

# Sampling rate (0.0 to 1.0)
OTEL_TRACES_SAMPLER_ARG=0.1

Prometheus Scrape Config

# prometheus.yml
scrape_configs:
  - job_name: 'fluxplay'
    static_configs:
      - targets: ['fluxplay:9090']
    metrics_path: /metrics
    scrape_interval: 15s

Example Grafana Panels

Active Streams

fluxplay_active_streamsGauge

Transcode Queue

fluxplay_transcode_queue_lengthGraph

API Latency

histogram_quantile(0.95, fluxplay_http_duration)Histogram

Download Speed

rate(fluxplay_download_bytes_total[5m])Graph

Error Rate

rate(fluxplay_errors_total[5m])Graph

Cache Hit Rate

fluxplay_cache_hits / fluxplay_cache_totalGauge

Monitoring Best Practices

  • Set up alerts for high CPU/memory usage before issues occur
  • Use trace sampling (0.1-0.2) to reduce overhead while catching issues
  • Create dashboards for different perspectives: admin, user experience, infrastructure
  • Correlate metrics with traces to understand performance impacts
  • Archive historical data for capacity planning and trend analysis