Мониторинг и логи
Что показывать на служебном экране, что писать в лог и как узнать о проблеме раньше заказчика.
Инсталляция без мониторинга — это инсталляция, о поломке которой вы узнаёте от заказчика через неделю.
Служебная панель
Отдельный Container COMP на служебном мониторе. Что на нём:
| Показатель | Зачем |
|---|---|
| Текущее кью и следующее | Где мы в шоу |
| Таймкод и признак сигнала | Идёт ли время |
| Мастер и режим (авто/ручной) | Кто управляет |
| DMX: уходит / не уходит | Живой ли выход |
| DMX in: приходит / нет | Слышим ли пульт |
| Кадры в секунду и пропуски | Успевает ли машина |
| Память CPU и GPU | Нет ли утечки |
| Контроллеры: отвечают / нет | Живо ли железо |
| Последние ошибки | Что сломалось |
Крупно, читаемо с двух метров, в тёмном зале.
Ошибки в таблице
Error DAT собирает ошибки всего проекта. Положите его на панель и в лог:
op('null_errors').numRows
op('some_op').errors()
op('some_op').warnings()
Молча проглоченная ошибка — худший вид отказа. Всё, что упало, должно быть видно.
Лог
Пишите в файл с датой:
import datetime
def log(msg):
ts = datetime.datetime.now().isoformat(timespec='seconds')
with open(f"D:/show/logs/{ts[:10]}.log", 'a', encoding='utf8') as f:
f.write(f"{ts} {msg}\n")
Что писать:
- старт и остановка проекта;
- смены кью и режимов;
- потеря и восстановление таймкода, DMX, сети;
- ошибки и исключения;
- раз в минуту — сводка: кадры, память, состояние.
Ротация обязательна: файл, растущий год, однажды заполнит диск.
Проверка железа
Опрос контроллеров — отдельная полезная вещь. Многие пиксель-контроллеры и Art-Net-узлы отвечают на ping или на опрос протокола. Раз в минуту проверять, кто не ответил, и писать в лог.
Ещё лучше — камера как обратная связь: она проверяет не «отвечает ли контроллер», а «горит ли свет».
Уведомления
Для инсталляции, которую вы обслуживаете:
- письмо или сообщение при падении и при восстановлении;
- ежедневная сводка утром: сколько времени работало, сколько перезапусков, были ли ошибки;
- предупреждение при росте памяти или падении кадров.
Реализуется Web Client DAT — Веб.
Система, которая присылает двести сообщений в день, перестаёт читаться на третий день. Уведомляйте о том, на что вы реально будете реагировать.
Сохраняйте кадр служебной панели или картинку с камеры раз в час. Через месяц это отвечает на вопрос «а что было в прошлый вторник» без догадок.