Всем привет, хочу рассказать про наш первый сервис, который мы собираемся оказывать нашим клиентам: сбор статистики и отчеты.
Много лет мы только продавали софт, теперь мы приготовили к запуску сервис по сбору статистики и предоставлению отчетов. У нас берут Flussonic, запускают его на своих серверах, абоненты смотрят видео с этих инстансов Flussonic и создаются записи о сессиях просмотра.
Эти сессии как раз сливаются в наш сервис и мы покажем отчеты, сделанные по ним, в личном кабинете.
Включается легко: в личном кабинете есть большая кнопка «Включить статистику». После нажатия через минуту Flussonic начнет отправлять нам сессии и они будут надежно сохраняться.
![image](https://habrastorage.org/r/w1560/getpro/habr/post_images/9d3/48b/ade/9d348baded8e68d2e52dbce57eb65cc6.png)
В данный момент мы дадим лишь самые базовые отчеты: распределение по странам, по браузерам (и прочим устройствам), по каналам. Можем дать как сырой список сессий, так и агрегировать похожие друг на друга:
![](https://habrastorage.org/r/w1560/web/b26/79e/de5/b2679ede55e4481d8d82c771f8150a59.png)
За две недели закрытого тестирования, у нас пока что скромный миллиард записей, но мы уверены, что справимся и с объёмом в 100 раз больше: пока что мы можем очень быстро показать даже уникальные сессии, а это очень недешевый отчет. Конкретно на этом скриншоте я показал, как выглядит склеивание похожих сессий в уникальные, т.е. если с одного и того же адреса, с тем же самым User Agent пытались смотреть одно и то же в узкий промежуток времени, то скорее всего это одна сессия, просто плохо учтенная.
Мы уже столкнулись с очень неприятной проблемой парсинга заголовка User Agent: ведь у нас много приставок (Set-Top-Box) и прочих подобных штук, а они в обычных базах браузеров отсутствуют.
Так же всплыла неожиданная проблема с MaxMind: нельзя просто так купить у них полную базу и показывать вам результаты поиска по ней, это требует специальную лицензию от 30.000$.
Но это всё так, решаемые проблемы и мы сейчас со всем этим работаем.
Отдельный момент с яваскриптовой мордой: это SPA React приложение, которое живет в отдельном микросервисе вместе с самим сервисом. Мы уже не первый компонент так делаем: яваскрипт, css живут и развиваются с самим бекендом сервиса и пользователю подключаются простой вставкой яваскрипта. Хитрости есть с авторизацией, потому что мы хотим не просто сообщать аккаунт, а заодно его права доступа, так что авторизационная сессия открывается при заходе пользователя в личный кабинет через межсерверное взаимодействие.
Планов на будущее у нас немало:
Если кто-то хочет попробовать, пощупать, но ещё не запускал Flussonic, то мы с радостью дадим бесплатный триал.
И, кстати, важно: сбор статистики и отчеты мы собираемся делать бесплатно!
Много лет мы только продавали софт, теперь мы приготовили к запуску сервис по сбору статистики и предоставлению отчетов. У нас берут Flussonic, запускают его на своих серверах, абоненты смотрят видео с этих инстансов Flussonic и создаются записи о сессиях просмотра.
Эти сессии как раз сливаются в наш сервис и мы покажем отчеты, сделанные по ним, в личном кабинете.
Включается легко: в личном кабинете есть большая кнопка «Включить статистику». После нажатия через минуту Flussonic начнет отправлять нам сессии и они будут надежно сохраняться.
![image](https://habrastorage.org/getpro/habr/post_images/9d3/48b/ade/9d348baded8e68d2e52dbce57eb65cc6.png)
В данный момент мы дадим лишь самые базовые отчеты: распределение по странам, по браузерам (и прочим устройствам), по каналам. Можем дать как сырой список сессий, так и агрегировать похожие друг на друга:
![](https://habrastorage.org/web/b26/79e/de5/b2679ede55e4481d8d82c771f8150a59.png)
За две недели закрытого тестирования, у нас пока что скромный миллиард записей, но мы уверены, что справимся и с объёмом в 100 раз больше: пока что мы можем очень быстро показать даже уникальные сессии, а это очень недешевый отчет. Конкретно на этом скриншоте я показал, как выглядит склеивание похожих сессий в уникальные, т.е. если с одного и того же адреса, с тем же самым User Agent пытались смотреть одно и то же в узкий промежуток времени, то скорее всего это одна сессия, просто плохо учтенная.
Немного деталей
Мы уже столкнулись с очень неприятной проблемой парсинга заголовка User Agent: ведь у нас много приставок (Set-Top-Box) и прочих подобных штук, а они в обычных базах браузеров отсутствуют.
Так же всплыла неожиданная проблема с MaxMind: нельзя просто так купить у них полную базу и показывать вам результаты поиска по ней, это требует специальную лицензию от 30.000$.
Но это всё так, решаемые проблемы и мы сейчас со всем этим работаем.
Отдельный момент с яваскриптовой мордой: это SPA React приложение, которое живет в отдельном микросервисе вместе с самим сервисом. Мы уже не первый компонент так делаем: яваскрипт, css живут и развиваются с самим бекендом сервиса и пользователю подключаются простой вставкой яваскрипта. Хитрости есть с авторизацией, потому что мы хотим не просто сообщать аккаунт, а заодно его права доступа, так что авторизационная сессия открывается при заходе пользователя в личный кабинет через межсерверное взаимодействие.
Планы
Планов на будущее у нас немало:
- сделать разделение в статистике на межсерверный трафик и трафик к клиентам
- помочь отловить тех, кто шарит аккаунт друзьям, а так же тех, кто занимается рестримингом
- добавить информацию о глубине просмотра архива и т.п.
Если кто-то хочет попробовать, пощупать, но ещё не запускал Flussonic, то мы с радостью дадим бесплатный триал.
И, кстати, важно: сбор статистики и отчеты мы собираемся делать бесплатно!
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
Что вам было бы интересно от статистики видеостримингового сервера?
50% информация о пользовательских устройствах8
31.25% знания о предпочтениях пользователей по контенту5
43.75% детали потребления контента7
56.25% усиление контроля за аномалиями9
25% сверка статистики с контрагентами4
12.5% что-то ещё, напишу в комментариях2
Проголосовали 16 пользователей. Воздержались 11 пользователей.