Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.livepeer.org/llms.txt

Use this file to discover all available pages before exploring further.


go-livepeer emits Prometheus metrics when started with the -metrics flag. The livepeer/monitor Docker image bundles Prometheus, Grafana, and starter dashboard templates for monitoring both broadcaster (gateway) and orchestrator nodes.

Enabling Prometheus Metrics

Start go-livepeer with -metrics to expose the metrics endpoint:
livepeer -broadcaster \
  -metrics \
  -cliAddr 127.0.0.1:7935 \
  ...
The metrics endpoint is available at http://<cliAddr>/metrics. With the default -cliAddr 127.0.0.1:7935, metrics are at http://127.0.0.1:7935/metrics. When running both a broadcaster and an orchestrator on the same host, assign different -cliAddr ports to each:
livepeer -broadcaster -metrics -cliAddr 127.0.0.1:7935 ...
livepeer -orchestrator -transcoder -metrics -cliAddr 127.0.0.1:7936 ...

Livepeer Monitor Docker Container

The livepeer/monitor container starts a Prometheus + Grafana stack pre-configured for go-livepeer. Point it at the metrics endpoints of your nodes via environment variables:
docker run \
  -e LP_PROM_BROADCASTERS=http://host.docker.internal:7935/metrics \
  -e LP_PROM_ORCHESTRATORS=http://host.docker.internal:7936/metrics \
  -p 3000:3000 \
  livepeer/monitor
Grafana is available at http://localhost:3000 after startup. The bundled dashboards include panels for segment success rate, transcoding latency, session counts, and node health. For Kubernetes deployments, the container supports automatic Prometheus service discovery via the LP_PROM_KUBE_SCRAPE_VALUE environment variable, which sets the prometheus.io/scrape label matcher.

Key Prometheus Metrics

go-livepeer exposes metrics with the livepeer_ prefix. Useful metrics include:
MetricTypeDescription
livepeer_broadcaster_segments_sent_totalCounterTotal segments sent to orchestrators
livepeer_broadcaster_segments_emerged_totalCounterTranscoded segments received back
livepeer_broadcaster_upload_time_secondsHistogramTime to upload a segment to an orchestrator
livepeer_broadcaster_download_time_secondsHistogramTime to receive a transcoded segment back
livepeer_broadcaster_transcode_scoreGaugeRatio of segments received to segments sent (1.0 = perfect)
livepeer_broadcaster_sessions_activeGaugeActive transcoding/AI sessions
livepeer_orchestrator_segments_transcoded_totalCounterTotal segments transcoded
livepeer_monitor_num_orchestratorsGaugeOrchestrators in the active selection pool
The full metric list is available at /metrics on any running go-livepeer node.

Manual Prometheus Configuration

To scrape go-livepeer with an existing Prometheus installation, add a scrape job to prometheus.yml:
scrape_configs:
  - job_name: livepeer-broadcaster
    scrape_interval: 5s
    static_configs:
      - targets:
          - 127.0.0.1:7935
        labels:
          livepeer_node_type: broadcaster

  - job_name: livepeer-orchestrator
    scrape_interval: 5s
    static_configs:
      - targets:
          - 127.0.0.1:7936
        labels:
          livepeer_node_type: orchestrator
The livepeer_node_type label is used by the bundled Grafana dashboard templates to distinguish node types. Including it when using custom Prometheus keeps dashboards compatible with the official templates. The livepeer/monitor Docker container is the fastest path to a working monitoring stack. Point it at your node’s metrics endpoint and Grafana dashboards appear at localhost:3000.

Orchestrator Monitoring

Orchestrator-specific health signals, AI inference metrics, and alerting.

Local Development

Running go-livepeer locally for development without the full network.
Last modified on May 19, 2026