Настройка PostHog - сервиса для анализа продуктовой статистики

Как настроить PostHog для анализа продуктовой статистики

Что такое PostHog и как его установить на свой сервер с ОС Ubuntu 22.04.

Введение

PostHog – мощный инструмент для анализа статистических данных веб-сайтов и приложений, аналог Google Analytics, Яндекс.Метрики и других подобных систем. PostHog предоставляет множество возможностей для получения статистической информации о посетителях, которые могут быть использованы для улучшения качества товаров и услуг, а также оптимизации маркетинговых кампаний и рекламных активов.

История PostHog ведется с запуска стартапа в 2020 году. Тогда небольшое B2B-решение, существующее буквально четыре недели, стало самым успешным запуском на HackerNews. С тех пор платформу установили более 24 000 компаний, а сообщество разработчиков вокруг продукта выросло до 70 000. 

В каких задачах полезен PostHog

PostHog стал популярен благодаря простоте использования и заточенности под маркетинговые исследования. В комплексе платформа позволяет собирать данные и анализировать, как пользователи взаимодействуют с сайтом или приложением, откуда приходят. Задачи, в которых поможет PostHog:

Оценка поведения пользователей. Оценка поведения пользователей. Платформа поможет отследить воронку продаж, оценит ретеншн, подсветит, на каком этапе воронки уходит большинство потенциальных клиентов. Интерфейс платформы позволяет визуализировать действия пользователей, а также разделять их на когорты.

Путь пользователя
Отслеживание пути пользователя в PostHog.

Анализ пути клиента. С помощью PostHog можно проследовать за пользователем с момента входа на сайт или в приложение до завершения сессии (аналог вебвизора). А теплокарты помогут понять, какие части сайта компании представляют наибольший и наименьший интерес для клиентов. 

Работа с базой данных пользователей. Их можно разделять на группы по определенным признакам или выделить какой-то определенный сегмент для маркетингового эксперимента. Для взаимодействия с базами данных не нужны дополнительные знания SQL — вся функциональность вшита в интуитивно понятный интерфейс.

Проверка гипотез. Для этого в PostHog есть модуль для A/B-тестирования. 

Проверка гипотез в Posthog
Возможности для проверки гипотез на нескольких группах пользователей

Платформа удобна для совместного ведения проектов. Есть возможность кооперативного управления инструментами, можно настроить уведомления и подключить другие функции для работы команды. 

Основные преимущества платформы PostHog

  • Персональный доступ к анализу статистических данных. PostHog предоставляет удобные аналитические инструменты, которые предназначены для отслеживания деятельности на своем сайте или приложении, без информации о других источниках статистики.
  • Широкий спектр функциональности и кастомизации. PostHog позволяет получить доступ к большому количеству полезных фишек, что может пригодиться в долгосрочной перспективе для управления маркетингом и повышения уровня продаж.
  • Поддержка кроссплатформенных аналитических инструментов. PostHog можно использовать на различных платформах (веб, мобильные приложения и др.), что упрощает его применение для изучения статистических данных.
  • Открытая разработка и поддержка сообществом. PostHog является проектом с открытым исходным кодом, что означает свободный доступ к обновлениям, исправлениям и улучшениям от разработчиков и сообщества пользователей, а также возможность самим участвовать в развитии и улучшении платформы.

PostHog можно арендовать как готовый сервис в облаке, а можно развернуть на своем собственном сервере. Мы пойдем вторым путем. Обратите внимание, что вы можете развернуть только прошлую версию PostHog на сервере, так как с июня 2023 года компания откажется от self-hosted, и останется только в облаке.

Создание ВМ Selectel

Мы будем разворачивать PostHog на виртуальной машине в облачной платформе Selectel. В панели управления заходим в раздел Облачная платформа, Серверы и нажимаем кнопку Создать сервер.  

Создание сервера для Posthog

Укажем название сервера и выберем образ — Ubuntu 22.04 LTS. Далее выбираем конфигурацию CPU и RAM: по рекомендации разработчиков PostHog, нужно не менее 4 ГБ оперативной памяти. Также выберите тип диск и его объем: 20 ГБ будет вполне достаточно. Обязательно подключите внешний IP-адрес, чтобы сервис был доступен из интернета. Затем загрузите и выберите свой SSH-ключ, чтобы подключаться к машине по SSH.

Выбор конфигурации

Через несколько минут сервер создастся и к нему можно будет подключаться. В разделе Серверы скопируйте внешний IP-адрес машины и подключитесь к ней по SSH.

Внешний IP-адрес сервера

Установка PostHog

Установка PostHog довольно проста. Достаточно запустить один скрипт, ответить на пару вопросов и немного подождать.

Итак, запускаем установочный скрипт:


    bash -c "$(curl -fsSL https://raw.githubusercontent.com/posthog/posthog/HEAD/bin/deploy-hobby)"

Во-первых, нужно указать тег (версию), которую нужно установить. Значение по умолчанию – latest, что означает самую последнюю версию. Просто нажмем Enter, чтобы выбрать этот вариант. Если нужна определенная версия, посмотреть список всех версий можно тут.

Далее скрипт запросит имя домена, на котором будет доступен дашборд. Важно, чтобы DNS запись A указывала на IP-адрес вашего сервера. После этого скрипт сам скачает и установит все нужные пакеты и зависимости. Также скрипт выпустит и установит TLS-сертификат от сервиса Let’s Encrypt. Когда установка завершится, вы увидите в консоли слово Done.

Переходим в браузере на адрес домена, который указали при установке. Откроется начальный экран PostHog, который предлагает вам либо сразу приступить к настройке, либо просто поэкспериментировать с системой.

Запуск Posthog

PostHog установлен, теперь его можно интегрировать с вашим сайтом или мобильным приложением.

Устранение неполадок

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

Во-первых, проверьте что все контейнеры запущены. Запустите команду docker ps и обратите внимание на столбец Status. В нем напротив каждого контейнера должно быть написано Up — это означает, что контейнер запущен и работает. Если вы видите там Error или Restarted, значит с контейнером что-то не так.


    CONTAINER ID   IMAGE                               COMMAND     CREATED    STATUS    PORTS   NAMES
21a2f62d6e50   posthog/posthog:release-1.43.0      ...         1m ago     Up 1m     ...     ...
77face12d3e2   posthog/posthog:release-1.43.0      ...         1m ago     Up 1m     ...     ...
3b4bc7394049   posthog/posthog:release-1.43.0      ...         1m ago     Up 1m     ...     ...
03f393c7aa84   caddy:2.6.1                         ...         1m ago     Up 1m     ...     ...
f1060c3d8d73   clickhouse/clickhouse-server:22.3   ...         1m ago     Up 1m     ...     ...
7d2353a6bddf   bitnami/kafka:2.8.1-debian-10-r99   ...         1m ago     Up 1m     ...     ...
72051397040e   zookeeper:3.7.0                     ...         1m ago     Up 1m     ...     ...
ff42ccf14481   redis:6.2.7-alpine                  ...         1m ago     Up 1m     ...     ...
402a0eef69ae   postgres:12-alpine                  ...         1m ago     Up 1m     ...     ...
da0d115dd02e   minio/minio                         ...         1m ago     Up 1m     ...     ...

Для того, чтобы понять, что именно не так с контейнером — посмотрим его логи. Для этого скопируйте идентификатор проблемного контейнера и выполните команду:


    docker log <CONTAINER_ID>

Обновление

Для того, чтобы обновить PostHog до новой версии, достаточно выполнить один скрипт:


    bash -c "$(curl -fsSL https://raw.githubusercontent.com/posthog/posthog/HEAD/bin/upgrade-hobby)"

Как и при установке, скрипт попросит указать желаемую версию.

Заключение

Мы узнали, что такое PostHog, установили его на свой сервер с ОС Ubuntu 22.04. Также выяснили, что нужно делать в случае возникновения проблем и как обновить PostHog до более свежей версии.