Каталог метрик Prometheus и PromQL-запросы
RUSEON Core экспортирует метрики Prometheus по адресу http://<host>:8080/metrics. Все метрики имеют префикс ruseon_ и отражают состояние входящих потоков, кольцевых буферов, раздачи клиентам, дискового архива и шины событий.
1. Метрики захвата потоков и камер
| Имя метрики | Тип | Метки | Описание |
|---|---|---|---|
ruseon_active_streams | Gauge | camera_id | Статус подключения камеры (1 = активен, 0 = оффлайн) |
ruseon_stream_reconnects_total | Counter | camera_id | Общее число попыток переподключения к RTSP |
ruseon_frames_received_total | Counter | camera_id | Количество полученных видеокадров |
ruseon_key_frames_total | Counter | camera_id | Количество полученных ключевых I-кадров |
ruseon_network_receive_bytes_total | Counter | camera_id | Объем полученных сетевых байт от RTSP |
2. Метрики кольцевого буфера и событий
| Имя метрики | Тип | Метки | Описание |
|---|---|---|---|
ruseon_ringbuffer_drops_total | Counter | camera_id | Количество сброшенных видеокадров при медленном чтении |
ruseon_eventbus_drops_total | Counter | (нет) | Количество сброшенных событий при переполнении очередей воркеров |
3. Метрики раздачи зрителям (WebRTC и HLS)
| Имя метрики | Тип | Метки | Описание |
|---|---|---|---|
ruseon_webrtc_peers_active | Gauge | camera_id | Число активных WebRTC WHEP сессий на поток |
ruseon_hls_requests_total | Counter | camera_id | Число обработанных запросов HLS манифестов и сегментов |
4. Метрики дискового архива
| Имя метрики | Тип | Метки | Описание |
|---|---|---|---|
ruseon_disk_write_bytes_total | Counter | camera_id | Объем байт, записанных архиватором fMP4 на диск |
ruseon_archive_segments_written_total | Counter | camera_id | Количество успешно завершенных часовых сегментов |
ruseon_archive_errors_total | Counter | camera_id | Количество ошибок дисковой записи |
5. Примеры PromQL-запросов
Входящий сетевой битрейт на камеру (Мбит/с):
promql
rate(ruseon_network_receive_bytes_total[1m]) * 8 / 1000000Общее количество активных WebRTC-зрителей:
promql
sum(ruseon_webrtc_peers_active)Частота сброса кадров в буфере:
promql
sum by (camera_id) (rate(ruseon_ringbuffer_drops_total[5m]))Скорость записи на диск (МБ/с на камеру):
promql
rate(ruseon_disk_write_bytes_total[1m]) / (1024 * 1024)Количество отключенных камер:
promql
count(ruseon_active_streams == 0)