SAYMON для инфраструктуры телеканалов и телевизионных студий

Ставим на мониторинг видеоролики YouTube

Любой обладатель контента – собственного уникального, арендованного или свободно переиспользуемого, решает вопрос о хранении и обеспечении его высокой доступности. Особенно важно быть уверенным в доступности видеоконтента, поскольку это – интерактивный продукт. Ожидания пользователя высоки и очень неприятно на официальном сайте компании увидеть надпись «Видео недоступно к просмотру». Как снизить риски, уменьшить время недоступности контента – расскажем в статье.

Мониторинг контента на площадке YouTube

Допустим, у вас есть уникальный видеоконтент, который залит на популярный ресурс компании Google – YouTube. Имея на то полное право, вы разместили на своем корпоративном сайте ссылки на плеер вида: https://www.youtube.com/watch?v=GrzAdlJwUQU&ab_channel=MONHOUSE. Через неопределенное время ролик может вдруг перестать проигрываться. Спектр возможных причин весьма широк – от недоступности ресурса до изменения лицензионных политик.

Своевременно узнать о проблеме и получить возможность оперативно ее решить – задача для программного комплекса «Центральный Пульт» . Развертывание на инфраструктуре телевещателя уже выполнено.

Наиболее функциональное и универсальное решение – использовать API YouTube: посредством интерфейса можно получить самую разнообразную информацию о видеоролике. Затем передать API-команды управления сервисом в «Центральный Пульт», где реализовать анализ и реакции на проблемы.

Создание сервиса в Google Cloud

Переходим по ссылке https://console.cloud.google.com/apis/library, авторизуемся, выбираем страну и соглашаемся с условиями.

Информация на английском языке о получении доступа к функционалу API доступна здесь – https://developers.google.com/youtube/registering_an_application. Кратко процедура создания сервиса выглядит так:

  1. В строку поиска Google Cloud вбиваем YouTube.
  2. В результатах поиска кликаем на YouTube Data API v3.
  1. На страничке нового проекта в Google Cloud активируем его, кликнув на Enable.
  1. На страничке созданного проекта выбираем в навигационном меню раздел APIs & Services и переходим в пункт Credentials.
  1. И создаем API key (нажимаем на кнопку CREATE CREDENTIALS в верхней части экрана и выбираем раздел API key).
  1. Скопировать API key можно прямо сейчас, либо позже, когда будем настраивать запрос к API.
  1. Там же, на страничке сервиса, можно посмотреть использование квот API (раздел навигационного меню IAM & Admin, в нем пункт Quotas).

Здесь приведены размеры квотирования, которые можно исчерпать в процессе отладки или при слишком частых запросах статусов по большому количеству роликов.

Постановка видеоролика на мониторинг в «Центральном Пульте» (SAYMON)

Вы уже наверняка создали иерархию объектов инфраструктуры в программном комплексе «Центральный Пульт». Предлагаю следующий порядок постановки на мониторинг видеороликов:

  1. Создаем раздел в дереве объектов. При наличии – в ветке «Сервисы», называем раздел «YouTube ролики».

В качестве класса объекта выбираем «Service».

  1. Создаем объект. Я использовал класс «Адрес». Имя ролика – это идентификатор ролика на YouTube сервисе, в нашем случае – GrzAdlJwUQU.
  1. Заходим в раздел «Подробная информация».
  1. В разделе «Мониторинг» выбираем:
  • «Агент» SAYMON, который будет выполнять запросы в API через Интернет и возвращать данные
  • «Тип проверки» – HTTP запрос
  • «Тип запроса» – GET
  • «Присылать тело ответа» – Да
  • «Формат ответа» – Определять автоматически
  • «Период» – 1 дни (помним о квотах)

На URL остановимся несколько подробнее. Формат запроса определяется Google, подробное описание начинается здесь – https://developers.google.com/youtube/v3/getting-started и далее – через поиск и меню.

Я использовал URL запроса вида:

«https://www.googleapis.com/youtube/v3/videos?id=IDролика&part=snippet,status,contentDetails&key=ключAPI»

C этого момента объект в SAYMON начнет получать данные от YouTube.

В выпадающем списке можно фильтровать столбцы таблицы и просматривать в компактном виде значения запрошенных данных.

Остается только «навести красоту»: установить размер значка ролика на подвиде, фон, прочитать статью Константина Михайлова в нашем блоге и воспользоваться советами.

Например, можно сформировать такой вид:

  1. Создание условий перехода между статусами

Для настройки условий для генерации аварий и выполнения оповещений нужно совершить еще несколько несложных операций.

В окне «Условия перехода» последовательно задаем значения полей:

Приведенные условия проверяют принципиальное наличие ролика на ресурсе. Можно установить дополнительные проверки полей лицензии и т.п., а также различные статусы для событий, в том числе собственные (например, “unlicensed”).

  1. Для отправки уведомлений по электронной почте переходим в раздел «Действия при смене состояний» и настраиваем условия:

На этом настройку можно считать законченной!

Исходя из количества роликов на площадке и выделенных квот, можно рассчитать наименьший период проверки доступности видео. В примере мы выставили периодичность – один раз в сутки. Это означает, что ответственный администратор сайта будет уведомлен не позднее, чем через сутки о нерабочей ссылке и сможет предпринять корректирующие действия для минимизации негативного опыта пользователей.

Сам собой возникает вопрос: а если роликов сотни или тысячи – неужели делать все вручную?! Конечно нет! Нужна автоматизация. Ее реализация также достаточно проста, но об этом – в следующей статье.

Оставайтесь на связи и следите за нашими публикациями в блоге!