Extended Prometheus metrics

Composer exposes roughly 160 metrics on its Prometheus endpoint (default port 8015, path /metrics). The tables below are the canonical reference, generated from the metric definitions in the engine; the Description column reproduces the # HELP text served alongside each metric on the endpoint. From R2 2026 every metric is emitted by every Composer build and licence tier (including Trial) with no separate activation.

Caution

Pre-R2 2026 releases: On older releases the extended metrics still appeared on the endpoint but reported 0 and didn't update unless the host's licence carried the Extended Monitoring plug-in entry (Trial builds were the exception and always exposed them). The baseline metrics (see below) have always reported normally regardless of licence.

Naming and prefixes

Metric names are a wire contract — Grafana dashboards and alert rules query them by name, so they are stable across releases. Composer uses five name prefixes:

Prefix Group Notes
composer_ Baseline Core render-loop and log counters. Always emitted on every tier.
composer_ext_ Extended The bulk of the surface — GPU, RTMP/SRT, alarms, WebSockets, etc. The _ext_ prefix is historical; it is not a reliable marker of which group a metric belongs to.
composer_packager_sink_target_ MoQ / Packager target Per-target media-over-QUIC output metrics.
composer_moq_input_ MoQ / Packager source Per-source media-over-QUIC input metrics.
composer_runtime_ Runtime lifecycle Process- and session-level metrics for the headless Composer Runtime.

Every metric additionally carries the static labels systemlabel, version, and hostname, applied at startup so a single Prometheus/Grafana instance can disambiguate many Composer hosts. Counters (cumulative since process start) are marked Counter below; everything else is a Gauge (an instantaneous value, even where the name ends in _total or _count).

Baseline metrics

Always emitted, on every licence tier. These drive the core render-health panels and the per-severity log counters.

Metric Type Description
composer_frames_processed_total Gauge Total processed video frames since process start.
composer_congestions_last_second Gauge Congestive frames in the last second.
composer_congestive_frames_since_start Gauge Total congestive frames since process start.
composer_processing_queue_length Gauge Current render processing queue length.
composer_last_frame_processing_time Gauge Processing time of the most recent frame in ms.
composer_max_processing_time Gauge Maximum frame processing time observed in ms.
composer_average_processing_time Gauge Average frame processing time in ms.
composer_gpu_ram_usage Gauge GPU RAM used by the process in GB.
composer_fatal_error_count_total Counter Total fatal errors logged since process start.
composer_error_count_total Counter Total errors logged since process start.
composer_warning_count_total Counter Total warnings logged since process start.

Processing

Extended render-loop timing beyond the baseline frame counters.

Metric Type Description
composer_ext_average_processing_time_10k_frames Gauge Average frame processing time over the last 10k frames in ms.
composer_ext_average_processing_usage_10k_frames Gauge Average processing-budget usage over the last 10k frames in percent.
composer_ext_last_frame_processing_usage Gauge Processing-budget usage of the most recent frame in percent.
composer_ext_worker_queue_flushes Gauge Worker queue flushes since process start.

GPU

Sampled from nvidia-smi. All values are for the GPU Composer is bound to.

Metric Type Description
composer_ext_gpu_power_usage_percentage Gauge GPU power draw as a percentage of the power limit.
composer_ext_gpu_power_usage Gauge GPU power draw in watts.
composer_ext_gpu_power_limit Gauge GPU power limit in watts.
composer_ext_gpu_power_state Gauge GPU performance state (P-state) reported by nvidia-smi, as an integer.
composer_ext_gpu_power_management_enabled Gauge 1 if GPU power management is enabled, 0 otherwise.
composer_ext_gpu_utilization Gauge GPU core utilisation percentage.
composer_ext_gpu_encoder_utilization Gauge GPU hardware encoder utilisation percentage.
composer_ext_gpu_decoder_utilization Gauge GPU hardware decoder utilisation percentage.
composer_ext_gpu_memory_total Gauge Total GPU memory in GB.
composer_ext_gpu_memory_used Gauge Used GPU memory in GB.
composer_ext_gpu_memory_available Gauge Available GPU memory in GB.
composer_ext_gpu_temperature Gauge GPU temperature in degrees Celsius.

System memory

Process RAM (not host-wide memory), in GB.

Metric Type Description
composer_ext_system_memory_usage Gauge Process RAM usage in GB.
composer_ext_system_memory_usage_avg_10min Gauge Average process RAM usage over the last 10 minutes in GB.
composer_ext_system_memory_usage_max_10min Gauge Peak process RAM usage over the last 10 minutes in GB.
composer_ext_system_memory_usage_min_10min Gauge Minimum process RAM usage over the last 10 minutes in GB.

RTMP targets (aggregate)

Roll-ups across all RTMP targets in the project. For per-target detail, see Per-instance metrics below.

Metric Type Description
composer_ext_rtmp_target_count Gauge Number of RTMP target instances.
composer_ext_rtmp_target_nvenc_count Gauge Number of RTMP targets using the NVENC encoder.
composer_ext_rtmp_target_x264_count Gauge Number of RTMP targets using the x264 software encoder.
composer_ext_rtmp_target_connected_count Gauge Number of RTMP targets currently connected.
composer_ext_rtmp_target_disconnected_count Gauge Number of RTMP targets currently disconnected.
composer_ext_rtmp_target_connecting_count Gauge Number of RTMP targets currently connecting.
composer_ext_rtmp_target_disconnecting_count Gauge Number of RTMP targets currently disconnecting.
composer_ext_rtmp_target_reconnecting_count Gauge Number of RTMP targets currently reconnecting.
composer_ext_rtmp_target_errors Gauge Number of RTMP targets currently in an error state.
composer_ext_rtmp_target_warnings Gauge Number of RTMP targets currently in a warning state.
composer_ext_rtmp_target_error_count Counter Total RTMP target errors since process start.
composer_ext_rtmp_target_warning_count Counter Total RTMP target warnings since process start.
composer_ext_rtmp_target_auto_reconnect_count Gauge Total automatic RTMP target reconnections.
composer_ext_rtmp_target_sum_outgoing_bitrate Gauge Combined outgoing bitrate across all RTMP targets in Mbit/s.
composer_ext_rtmp_target_avg_network_write_time Gauge Average network write time across RTMP targets in ms.
composer_ext_rtmp_target_avg_video_encode_time Gauge Average video encode time across RTMP targets in ms.
composer_ext_rtmp_target_all_connected Gauge 1 if all RTMP targets are connected, 0 otherwise.
composer_ext_rtmp_target_max_pts_diff Gauge Maximum PTS difference across RTMP targets in ms.

Per-instance metrics

One time series per input/target instance, identified by the labels instance_id and instance_name. Series are removed from the endpoint when their instance is torn down, so a stopped target stops appearing rather than reporting stale values. connection_status is encoded as 0=Disconnected, 1=Connecting, 2=Connected, 3=Reconnecting; buffer_state / buffering_state as 0=None, 1=Buffering, 2=Buffered; listener and playback states are raw integer enum values.

RTMP target (per instance_id, instance_name)

Metric Type Description
composer_ext_rtmp_target_instance_connection_status Gauge Connection status: 0=Disconnected, 1=Connecting, 2=Connected, 3=Reconnecting.
composer_ext_rtmp_target_instance_outgoing_bitrate_mbps Gauge Outgoing bitrate in Mbit/s.
composer_ext_rtmp_target_instance_output_queue_size Gauge Output queue depth.
composer_ext_rtmp_target_instance_avg_video_encode_time_ms Gauge Average video encode time in ms.
composer_ext_rtmp_target_instance_max_video_encode_time_ms Gauge Maximum video encode time in ms.
composer_ext_rtmp_target_instance_avg_network_write_time_ms Gauge Average network write time in ms.
composer_ext_rtmp_target_instance_pts_diff_average Gauge Average PTS difference in ms.
composer_ext_rtmp_target_instance_auto_reconnects Gauge Automatic reconnections performed.
composer_ext_rtmp_target_instance_video_frames_written Gauge Video frames written.
composer_ext_rtmp_target_instance_error_count Gauge Error count for this target.
composer_ext_rtmp_target_instance_warning_count Gauge Warning count for this target.

SRT target (per instance_id, instance_name)

Metric Type Description
composer_ext_srt_target_instance_connection_status Gauge Connection status: 0=Disconnected, 1=Connecting, 2=Connected, 3=Reconnecting.
composer_ext_srt_target_instance_outgoing_bitrate_mbps Gauge Outgoing bitrate in Mbit/s.
composer_ext_srt_target_instance_output_queue_size Gauge Output queue depth.
composer_ext_srt_target_instance_avg_video_encode_time_ms Gauge Average video encode time in ms.
composer_ext_srt_target_instance_max_video_encode_time_ms Gauge Maximum video encode time in ms.
composer_ext_srt_target_instance_avg_network_write_time_ms Gauge Average network write time in ms.
composer_ext_srt_target_instance_auto_reconnects Gauge Automatic reconnections performed.
composer_ext_srt_target_instance_video_frames_written Gauge Video frames written.
composer_ext_srt_target_instance_error_count Gauge Error count for this target.
composer_ext_srt_target_instance_warning_count Gauge Warning count for this target.

RTMP input (per instance_id, instance_name)

Metric Type Description
composer_ext_rtmp_input_instance_connection_status Gauge Connection status: 0=Disconnected, 1=Connecting, 2=Connected, 3=Reconnecting.
composer_ext_rtmp_input_instance_video_buffer_size_frames Gauge Video buffer depth in frames.
composer_ext_rtmp_input_instance_video_buffer_size_ms Gauge Video buffer depth in ms.
composer_ext_rtmp_input_instance_audio_buffer_size_ms Gauge Audio buffer depth in ms.
composer_ext_rtmp_input_instance_buffer_state Gauge Buffer state: 0=None, 1=Buffering, 2=Buffered.
composer_ext_rtmp_input_instance_auto_reconnects Gauge Automatic reconnections performed.
composer_ext_rtmp_input_instance_flushes Gauge Buffer flushes performed.

SRT input (per instance_id, instance_name)

Metric Type Description
composer_ext_srt_input_instance_listener_status Gauge Listener status as an integer enum value.
composer_ext_srt_input_instance_buffering_state Gauge Buffering state: 0=None, 1=Buffering, 2=Buffered.
composer_ext_srt_input_instance_video_buffer_size_frames Gauge Video buffer depth in frames.
composer_ext_srt_input_instance_video_buffer_size_ms Gauge Video buffer depth in ms.
composer_ext_srt_input_instance_audio_buffer_size_ms Gauge Audio buffer depth in ms.
composer_ext_srt_input_instance_video_audio_sync_ms Gauge Video/audio sync offset in ms.
composer_ext_srt_input_instance_auto_reconnects Gauge Automatic reconnections performed.
composer_ext_srt_input_instance_flushes Gauge Buffer flushes performed.
composer_ext_srt_input_instance_buffer_underruns Gauge Buffer under-runs.
composer_ext_srt_input_instance_video_decode_errors Gauge Video decode errors.
composer_ext_srt_input_instance_packets_received Gauge Packets received.
composer_ext_srt_input_instance_rendered_frames Gauge Rendered frames.

DeckLink input (per instance_id, instance_name)

Metric Type Description
composer_ext_decklink_input_instance_playback_state Gauge Playback state as an integer enum value.
composer_ext_decklink_input_instance_captured_frames Gauge Captured frames.
composer_ext_decklink_input_instance_playback_frames Gauge Playback frames.
composer_ext_decklink_input_instance_zero_data_frames Gauge Zero-data frames captured.

DeckLink output (per instance_id, instance_name)

Metric Type Description
composer_ext_decklink_output_instance_playback_state Gauge Playback state as an integer enum value.
composer_ext_decklink_output_instance_frames_displayed Gauge Frames displayed.

MoQ / Packager targets

Per media-over-QUIC output (MoQTarget / packager sink), labelled target_id, target_name, and sink_type. composer_packager_sink_target_count is the only unlabelled roll-up.

Metric Type Description
composer_packager_sink_target_count Gauge Number of MoQTarget/PackagerSink instances.
composer_packager_sink_target_connection_status Gauge Connection status: 0=Disconnected, 1=Connecting, 2=Connected, 3=Reconnecting.
composer_packager_sink_target_reconnection_count_total Counter Total reconnections for this target since process start.
composer_packager_sink_target_frames_processed_total Counter Total frames processed by this target since process start.
composer_packager_sink_target_packets_sent_total Counter Total packets sent by this target since process start.
composer_packager_sink_target_avg_video_processing_time Gauge Average video processing time in ms.
composer_packager_sink_target_avg_encoding_time Gauge Average encoding time in ms.
composer_packager_sink_target_avg_total_time Gauge Average total processing time in ms.
composer_packager_sink_target_peak_video_processing_time Gauge Peak video processing time in ms.
composer_packager_sink_target_peak_encoding_time Gauge Peak encoding time in ms.
composer_packager_sink_target_video_input_queue_depth Gauge Video input queue depth.
composer_packager_sink_target_encoding_input_queue_depth Gauge Encoding input queue depth.
composer_packager_sink_target_output_queue_depth Gauge Output queue depth.
composer_packager_sink_target_outgoing_bitrate_mbps Gauge Outgoing bitrate in Mbit/s (30-second rolling average).

MoQ / Packager sources

Per media-over-QUIC input (MoQInput / packager source), labelled id, name, and source_type. composer_moq_input_count is the only unlabelled roll-up.

Metric Type Description
composer_moq_input_count Gauge Number of MoQInput instances.
composer_moq_input_connection_status Gauge Connection status: 0=Disconnected, 1=Connecting, 2=Connected, 3=Reconnecting.
composer_moq_input_reconnection_count_total Counter Total reconnections for this source since process start.
composer_moq_input_packets_received_total Counter Total packets received by this source since process start.
composer_moq_input_rendered_frames_total Counter Total frames rendered by this source since process start.
composer_moq_input_video_frames_decoded_total Counter Total video frames decoded by this source since process start.
composer_moq_input_audio_frames_decoded_total Counter Total audio frames decoded by this source since process start.
composer_moq_input_buffer_underruns_total Counter Total buffer under-runs for this source since process start.
composer_moq_input_video_decode_errors_total Counter Total video decode errors for this source since process start.
composer_moq_input_video_buffer_ms Gauge Video buffer size in ms.
composer_moq_input_audio_buffer_ms Gauge Audio buffer size in ms.
composer_moq_input_incoming_video_bitrate_mbps Gauge Incoming video bitrate in Mbit/s.
composer_moq_input_incoming_audio_bitrate_mbps Gauge Incoming audio bitrate in Mbit/s.
composer_moq_input_avg_decode_time_ms Gauge Average video decode time in ms.
composer_moq_input_peak_decode_time_ms Gauge Peak video decode time in ms.
composer_moq_input_connect_latency_ms Gauge Last connect latency in ms.
composer_moq_input_is_congested Gauge 1 if the source is congested, 0 otherwise.
composer_moq_input_video_audio_sync_ms Gauge Video/audio sync offset in ms.

Alarms

Metric Type Description
composer_ext_alarms_total_count Counter Total alarms triggered since process start.
composer_ext_alarms_currently_active Gauge Number of alarms currently active.

WebSockets

Real-time API traffic — connected clients, throughput, and queue depths.

Metric Type Description
composer_ext_incoming_websocket_messages_total Counter Total WebSocket messages received since process start.
composer_ext_sent_websocket_messages_total Counter Total WebSocket messages sent since process start.
composer_ext_websockets_incoming_queue_size Gauge Current inbound WebSocket queue size.
composer_ext_websockets_outgoing_queue_size Gauge Current outbound WebSocket queue size.
composer_ext_websocket_processing_time_ms Gauge WebSocket processing time in ms.
composer_ext_websocket_incoming_message_count_total Gauge Cumulative inbound WebSocket message count.
composer_ext_websocket_outgoing_message_count_total Gauge Cumulative outbound WebSocket message count.
composer_ext_websocket_clients_connected Gauge Number of currently connected WebSocket clients.
composer_ext_websocket_egress_bytes_per_second_average Gauge Average outbound WebSocket throughput in bytes per second.
composer_ext_websocket_ingress_bytes_per_second_average Gauge Average inbound WebSocket throughput in bytes per second.
composer_ext_websocket_egress_messages_per_second Gauge Outbound WebSocket messages per second.
composer_ext_websocket_egress_bytes_per_second Gauge Outbound WebSocket throughput in bytes per second.

Runtime lifecycle

Process- and session-level metrics for the headless Composer Runtime. composer_runtime_api_calls_total carries an endpoint label.

Metric Type Description
composer_runtime_uptime_seconds Gauge Runtime process uptime in seconds.
composer_runtime_project_uptime_seconds Gauge Current project session uptime in seconds.
composer_runtime_project_loaded Gauge 1 if a project is loaded and running, 0 otherwise.
composer_runtime_projects_started_total Counter Total projects started since runtime launch.
composer_runtime_reloads_total Counter Total project reloads since runtime launch.
composer_runtime_api_calls_total Counter Total runtime API calls since runtime launch. (label: endpoint)
composer_runtime_errors_total Gauge Cumulative errors across all project sessions since runtime launch.
composer_runtime_warnings_total Gauge Cumulative warnings across all project sessions since runtime launch.
composer_runtime_last_reload_duration_seconds Gauge Duration of the last project reload in seconds.
composer_runtime_last_time_to_first_frame_seconds Gauge Time from the last start/reload to the first frame rendered, in seconds.
composer_runtime_compute_time_ms_short Gauge Average compute time over the last ~100 frames in ms.
composer_runtime_compute_time_ms_long Gauge Average compute time over the last ~10k frames in ms.
composer_runtime_congestions Gauge Congestive frames in the current project session.
composer_runtime_queue_flushes Gauge Worker queue flushes in the current project session.

Project and API

Metric Type Description
composer_ext_project_fps Gauge Configured project frame rate in frames per second.
composer_ext_api_call_count Counter Total HTTP API calls since process start.
composer_ext_allow_grafana_alerts Gauge 1 if Grafana alerts are enabled for this instance, 0 otherwise.
composer_ext_runtime_state_enum Gauge Runtime lifecycle state exposed as an integer enum value.

The /metrics endpoint is self-describing: each metric carries its own # HELP and # TYPE lines. The tables above are kept in sync with the engine's metric definitions, but pointing a browser at a running instance's /metrics endpoint always shows the exact set emitted by that specific build.