Prometheus Metrics
ChannelWatch exposes a Prometheus endpoint at /metrics. This page documents only the metrics confirmed in the current backend implementation.
Scrape endpoint
Section titled “Scrape endpoint”GET /metricsThe endpoint returns standard Prometheus text exposition:
scrape_configs: - job_name: channelwatch static_configs: - targets: ['channelwatch-host:8501'] scrape_interval: 30sMetric catalog
Section titled “Metric catalog”The current source-backed metrics are:
| Metric | Type | Notes |
|---|---|---|
channelwatch_uptime_seconds | Gauge | Seconds since the UI backend started |
channelwatch_active_streams | Gauge | Aggregate active streams plus per-DVR labeled series |
channelwatch_core_running | Gauge | 1 when the core process is running, 0 otherwise |
channelwatch_configured_dvrs | Gauge | Number of enabled DVRs in the current settings |
channelwatch_disk_free_bytes | Gauge | Aggregate and per-DVR free storage bytes |
channelwatch_disk_total_bytes | Gauge | Aggregate and per-DVR total storage bytes |
channelwatch_disk_used_bytes | Gauge | Aggregate and per-DVR used storage bytes |
channelwatch_dvr_connected | Gauge | Per-DVR reachability state |
channelwatch_dvr_version_info | Gauge | Per-DVR version metadata; metric value is always 1 |
Any other metric names previously documented should be treated as stale unless you confirm them in the current app source.
Labels actually used today
Section titled “Labels actually used today”Per-DVR gauges
Section titled “Per-DVR gauges”The per-DVR variants of these metrics use:
dvr_iddvr_namehostport
This label set is used for:
channelwatch_dvr_connected- per-DVR
channelwatch_active_streams - per-DVR
channelwatch_disk_free_bytes - per-DVR
channelwatch_disk_total_bytes - per-DVR
channelwatch_disk_used_bytes
Aggregate disk gauges
Section titled “Aggregate disk gauges”The aggregate disk-byte series use:
scope="all"
Version info gauge
Section titled “Version info gauge”channelwatch_dvr_version_info uses these labels:
dvr_iddvr_nameversioncompatible
The sample value is always 1; the version and compatibility state live in the labels.
Example queries
Section titled “Example queries”channelwatch_dvr_connectedchannelwatch_active_streams{dvr_name="Living Room"}channelwatch_disk_free_bytes{scope="all"}channelwatch_dvr_version_info{compatible="0"}Related pages
Section titled “Related pages”- Health & Readiness Probes - how the backend exposes monitoring state over HTTP
- Per-DVR Health - the JSON health endpoint for one DVR
- Debug Bundles - bundle a sanitized troubleshooting snapshot