Ставим на мониторинг видеоролики 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. Кратко процедура создания сервиса выглядит так:
- В строку поиска Google Cloud вбиваем YouTube.
- В результатах поиска кликаем на YouTube Data API v3.
- На страничке нового проекта в Google Cloud активируем его, кликнув на Enable.
- На страничке созданного проекта выбираем в навигационном меню раздел APIs & Services и переходим в пункт Credentials.
- И создаем API key (нажимаем на кнопку CREATE CREDENTIALS в верхней части экрана и выбираем раздел API key).
- Скопировать API key можно прямо сейчас, либо позже, когда будем настраивать запрос к API.
- Там же, на страничке сервиса, можно посмотреть использование квот API (раздел навигационного меню IAM & Admin, в нем пункт Quotas).
Здесь приведены размеры квотирования, которые можно исчерпать в процессе отладки или при слишком частых запросах статусов по большому количеству роликов.
Постановка видеоролика на мониторинг в «Центральном Пульте» (SAYMON)
Вы уже наверняка создали иерархию объектов инфраструктуры в программном комплексе «Центральный Пульт». Предлагаю следующий порядок постановки на мониторинг видеороликов:
- Создаем раздел в дереве объектов. При наличии – в ветке «Сервисы», называем раздел «YouTube ролики».
В качестве класса объекта выбираем «Service».
- Создаем объект. Я использовал класс «Адрес». Имя ролика – это идентификатор ролика на YouTube сервисе, в нашем случае – GrzAdlJwUQU.
- Заходим в раздел «Подробная информация».
- В разделе «Мониторинг» выбираем:
- «Агент» 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.
В выпадающем списке можно фильтровать столбцы таблицы и просматривать в компактном виде значения запрошенных данных.
Остается только «навести красоту»: установить размер значка ролика на подвиде, фон, прочитать статью Константина Михайлова в нашем блоге и воспользоваться советами.
Например, можно сформировать такой вид:
- Создание условий перехода между статусами
Для настройки условий для генерации аварий и выполнения оповещений нужно совершить еще несколько несложных операций.
В окне «Условия перехода» последовательно задаем значения полей:
Приведенные условия проверяют принципиальное наличие ролика на ресурсе. Можно установить дополнительные проверки полей лицензии и т.п., а также различные статусы для событий, в том числе собственные (например, “unlicensed”).
- Для отправки уведомлений по электронной почте переходим в раздел «Действия при смене состояний» и настраиваем условия:
На этом настройку можно считать законченной!
Исходя из количества роликов на площадке и выделенных квот, можно рассчитать наименьший период проверки доступности видео. В примере мы выставили периодичность – один раз в сутки. Это означает, что ответственный администратор сайта будет уведомлен не позднее, чем через сутки о нерабочей ссылке и сможет предпринять корректирующие действия для минимизации негативного опыта пользователей.
Сам собой возникает вопрос: а если роликов сотни или тысячи – неужели делать все вручную?! Конечно нет! Нужна автоматизация. Ее реализация также достаточно проста, но об этом – в следующей статье.
Оставайтесь на связи и следите за нашими публикациями в блоге!