Skip to content

Мониторинг Watcher

Дашборд Watcher Monitoring даёт обзор здоровья кластера Watcher: камеры и потоки, агенты на объектах, стримеры, переразмещение каналов, пользователи, NVR и модуль видеоаналитики Vision.

В отличие от мониторинга захвата на медиасервере, здесь смотрят на уровень оркестрации Watcher — кто онлайн, куда переехал поток, сколько эпизодов Vision обработано. Дашборд без фильтров: сводка по всей системе Watcher, подключённой к Retroview.

Базовые метрики

Блок Base metrics — верхнеуровневая картина состояния основных сущностей Watcher.

На всех трёх графиках состояния используется одна и та же модель статусов (подсказка в Grafana при наведении на иконку i):

  • operational — работает штатно, без проблем;
  • outage — полностью недоступен;
  • degradated — доступен, но с деградацией (пропуски кадров, низкое разрешение и т.п.);
  • partial_outage — доступна только часть (например, видео без аудио);
  • disabled — намеренно выключен или не должен быть активен.

Графики показывают изменение числа сущностей в каждом статусе за интервал (increase(...)), а не абсолютный снимок на момент времени. Рост линии outage — тревожный сигнал, даже если operational ещё высокий.

Streams

График Streams — статусы потоков (камер) в Watcher (watcher_stream_status).

Главный индикатор доступности видео для пользователей. Если outage стабильно выше operational — массовые проблемы с камерами или агентами. Рост degradated при низком outage — камеры «живые», но качество просмотра ухудшено.

Agents

График Agents — статусы агентов на объектах (watcher_agent_status).

Агент собирает потоки с камер и отдаёт их в Watcher. Массовый outage здесь часто объясняет outage на графике Streams: проблема на стороне объекта (сеть, хост агента, обновление), а не на стримере.

Streamers

График Streamers — статусы медиасерверов-стримеров (watcher_streamer_status).

Показывает, сколько стримеров в кластере работают нормально и сколько недоступны. Малое абсолютное число (единицы–десятки) — норма для компактного кластера; важна динамика: любой устойчивый outage требует проверки дашборда Server Stats.

Watcher version

График Watcher version — версия Watcher (watcher_version).

Ступенчатая линия при обновлении или перезапуске инстансов. Удобно сопоставить с всплесками outage или Relayouts ниже: деградация после скачка версии может быть связана с деплоем.

Переразмещение и стабильность

Вторая часть базовых метрик — события переразмещения потоков и стабильность самого Watcher.

Relayouts

График Relayouts — причины переноса потока с одного узла на другой (watcher_relayouts_reason).

Каждый всплеск — одно или несколько событий relayout. Основные причины из описания панели:

  • node_become_offline — предыдущий узел стал недоступен;
  • node_channel_limit_exceeded — на узле исчерпан лимит каналов;
  • required_tags_dont_match — у узла не было нужных меток для потока;
  • better_node_tags_match — появился узел с более подходящими метками.

На графике могут отображаться и другие коды причин (лимит DVR, превышение bandwidth, конфликт ingest и т.д.) — все они означают, что Watcher перераспределил поток. Редкие всплески — нормальная реакция на падение узла. Постоянная «ёжика» на графике — нестабильная балансировка или нехватка ёмкости кластера.

Watcher zones

Панель Watcher zones — число зон мониторинга (watcher_zones_count).

Справочное значение: сколько зон (логических групп объектов/камер) настроено в системе. Резкое изменение без плановых работ — проверьте конфигурацию.

Restarts count

График Restarts count — перезапуски Watcher (watcher_restarts_count).

Норма — ноль на всём интервале. Любой рост — инстанс Watcher перезапускался (деплой, OOM, сбой). Сопоставьте с Watcher version и всплесками outage на потоках.

Пользователи и NVR

Users count

График Users count — динамика пользователей (watcher_users_count по типу):

  • new — новые пользователи за интервал;
  • existing — уже существующие в системе.

На практике в легенде могут встречаться и другие типы (например, total и online) в зависимости от версии Watcher — смысл тот же: сколько учётных записей в системе и как меняется активность. Плоская линия online у нуля при большом total — пользователи зарегистрированы, но сейчас никто не смотрит (ночь, выходной) или проблема с сессиями — сверяйте с статистикой сессий.

NVR status

График NVR status — состояние NVR-устройств (nvr_count):

  • operational — NVR проходят проверку здоровья;
  • outage — NVR недоступны или не проходят health check;
  • total — всего NVR под мониторингом.

outage должен быть минимальным. Ритмичные одновременные провалы operational и outage до нуля могут указывать на периодический опрос (polling) или нестабильную сеть до устройств, а не на реальное отключение всех NVR.

Vision

Блок Vision — видеоаналитика: эпизоды, ошибки, состояние потоков с аналитикой и распознавание лиц.

Vision episodes

График Vision episodes — обнаруженные эпизоды по типу (watcher_vision_episodes_type):

  • generic — общий (неспецифичный) эпизод;
  • vehicle — транспорт;
  • face — лицо человека.

Показывает активность аналитики: рост vehicle и face при нулевых ошибках — нормальная работа. Резкое падение всех типов при активных камерах — аналитика не получает кадры или отключена.

Vision errors

График Vision errors — ошибки обработки (watcher_vision_errors_type):

  • uncertain — неуверенное распознавание;
  • bad_quality — плохое качество кадра для анализа;
  • fetch_validation_err — ошибка при получении данных;
  • i12n_validation_err — ошибка валидации (в т.ч. локализации/формата).

Норма — ноль. Любой устойчивый рост — проблема с источником, сетью до Vision-сервиса или конфигурацией. Сначала проверьте Vision streams и мониторинг захвата для соответствующих камер.

Vision streams

График Vision streams — статусы потоков с включённой аналитикой (watcher_vision_streams_status).

Те же статусы, что у Streams в базовом блоке, но только для камер с Vision. outage здесь при штатном operational на общем графике Streams означает: лайв есть, аналитика на части камер не работает.

Vision persons

График Vision persons — распознавание людей (watcher_vision_persons_type):

  • new — впервые идентифицированные лица;
  • existing — лица, уже известные системе.

Отражает работу модуля лиц. Преобладание new — много незнакомых посетителей или переобучение базы; стабильный existing — узнаваемые объекты в кадре.

Распознавание номеров

График License plates recognizing — эпизоды с транспортом и результат распознавания госномера (watcher_vision_episodes_license_plate):

  • recognized — номер распознан;
  • not_recognized — транспорт зафиксирован, номер не прочитан.

Высокий not_recognized при низком recognized — типичная картина для сложных условий (угол камеры, грязь на номере, ночь, скорость). Сопоставьте с Vision episodesvehicle: если машины детектируются, а recognized ноль — настраивайте зону кадрирования и качество потока, а не отключение аналитики.

Дневные всплески not_recognized с провалом ночью соответствуют реальному трафику на объекте. Резкое падение обеих линий при работающих vehicle-эпизодах — сбой модуля LPR или потеря потока на камерах въезда.

Сценарии использования

Массово «не работают камеры»

Сначала Streams и Agents: если outage на агентах — проблема на объектах. Если агенты в порядке — Streamers и Server Stats.

После обновления Watcher

Watcher version + Restarts count + всплеск Relayouts и outage — ожидаемо кратковременно; длительный outage — откат или разбор логов.

Плохая аналитика / нет событий Vision

Vision streamsVision errorsVision episodes. При нулевых эпизодах и ошибках fetch — сеть или стример; при bad_qualityкачество входа.

Нестабильная балансировка

Постоянные Relayouts с node_channel_limit_exceeded или streamer_total_bandwidth_exceeded — добавить стримеры или снизить нагрузку на узлы.

NVR «мигают» в мониторинге

NVR status с пилообразным графиком — проверить доступность устройств и интервал health check, не путать с реальным отказом всех регистраторов.