Yandex Tracker: экспорт и визуализация данных
Визуализация данных из Tracker в Yandex DataLens позволяет построить более сложную аналитику, чем это возможно средствами самого Tracker.
Для визуализации данных из Tracker в DataLens необходимо:
- организовать регулярный экспорт данных во внешнее хранилище;
- визуализировать необходимые метрики и данные с помощью DataLens.
Для визуализации данных выполните следующие шаги:
- Подготовьте облако к работе.
- Создайте БД для хранения данных Tracker.
- Создайте OAuth токен для доступа к Tracker.
- Создайте функцию Cloud Functions для импорта данных.
- Создайте подключение к DataLens.
- Создайте датасет.
- Создайте чарт.
- Создайте дашборд в DataLens и добавьте на него чарты.
Перед началом работы
Примечание
Рекомендуется создать отдельную учетную запись Tracker для работы с сервисом.
Зарегистрируйтесь в Yandex Cloud и создайте платежный аккаунт:
- Перейдите в консоль управления
, затем войдите в Yandex Cloud или зарегистрируйтесь. - На странице Yandex Cloud Billing
убедитесь, что у вас подключен платежный аккаунт, и он находится в статусеACTIVE
илиTRIAL_ACTIVE
. Если платежного аккаунта нет, создайте его и привяжите к нему облако.
Если у вас есть активный платежный аккаунт, вы можете создать или выбрать каталог, в котором будет работать ваша инфраструктура, на странице облака
Подробнее об облаках и каталогах.
Необходимые платные ресурсы
- Постоянно запущенный кластер Managed Service for ClickHouse® (см. тарифы Managed Service for ClickHouse®);
- Использование функции Cloud Functions (см. тарифы Cloud Functions).
Если созданные ресурсы вам больше не нужны, удалите их.
Создайте БД для хранения данных Tracker
- Перейдите в консоль управления
. - В левом верхнем углу нажмите кнопку
Все сервисы. - Выберите Платформа данных → Managed Service for ClickHouse.
- Нажмите кнопку Создать кластер ClickHouse.
- Укажите параметры кластера:
- Базовые параметры:
- Окружение —
PRODUCTION
; - Версия —
22.8 LTS
;
- Окружение —
- Ресурсы:
- Платформа —
Intel Ice Lake
; - Тип —
standart
; - Класс хоста —
s3-c2-m8 (2 vCPU, 8 ГБ)
;
- Платформа —
- Размер хранилища —
30 ГБ
; - Хосты:
- Публичный доступ —
Включено
;
- Публичный доступ —
- Настройки СУБД:
- Управление пользователями через SQL —
Выключено
; - Управление базами данных через SQL —
Выключено
; - Имя пользователя —
tracker_data
; - Имя БД —
db1
;
- Управление пользователями через SQL —
- Сервисные настройки:
- Доступ из DataLens —
Включено
; - Доступ из Serverless —
Включено
.
Полный список настроек см. в разделе Настройки Managed Service for ClickHouse®.
- Доступ из DataLens —
- Базовые параметры:
- Нажмите кнопку Создать кластер. Дождитесь, когда статус созданного кластера сменится на
Alive
. - Скопируйте и сохраните имя хоста для дальнейшей настройки Cloud Functions.
Создайте OAuth токен для доступа к Tracker
-
Перейдите на страницу Создание приложения
. -
Заполните поля:
- Название вашего сервиса;
- Платформы —
Веб-сервисы
; - Redirect URI — нажмите на строку Подставить URL для отладки или впишите адрес
https://oauth.yandex.ru/verification_code
.
-
В разделе Доступ к данным укажите:
Чтение из трекера
;Запись в трекер
.
-
Нажмите кнопку Создать приложение.
-
В новом окне введите в адресную строку браузера адрес:
https://oauth.yandex.ru/authorize?response_type=token&client_id=<идентификатор_приложения>
Где
client_id
— идентификатор созданного приложения в поле ClientID. -
Авторизуйтесь с помощью учетной записи Tracker, которая будет использоваться для визуализации.
-
Сохраните полученный OAuth токен.
Создайте функцию Cloud Functions для импорта данных
- Перейдите в консоль управления
. - В левом верхнем углу нажмите кнопку
Все сервисы. - Выберите Бессерверные вычисления → Cloud Functions.
- Нажмите кнопку Создать функцию.
- Укажите название функции и нажмите кнопку Создать.
- В открывшемся окне Редактор выберите среду выполнения
Python
. - Нажмите кнопку Продолжить.
- В поле Способ нажмите кнопку ZIP-архив.
- Прикрепите тестовый архив
. - В поле Точка входа укажите
tracker_import.handler
. - В разделе Параметры укажите:
- Таймаут, c —
60
; - Память —
1024
; - Переменные окружения:
-
TRACKER_ORG_ID
— ID организации Яндекс 360 для бизнеса.Примечание
Если у вас используется организация Yandex Cloud Organization (проверить можно на странице администрирования
), в коде функцииtracker_import.py
замените заголовокX-Org-ID
наX-Cloud-Org-Id
. -
TRACKER_OAUTH_TOKEN
— OAuth токен учетной записи Tracker. -
CH_HOST
— имя хоста. -
CH_DB
— название базы данных. -
CH_USER
— имя пользователя. -
CH_PASSWORD
— пароль. -
CH_ISSUES_TABLE
—tracker_issues
. -
CH_CHANGELOG_TABLE
—tracker_changelog
. -
TRACKER_INITIAL_HISTORY_DEPTH
—1d
. -
CH_STATUSES_VIEW
—v_tracker_statuses
.
-
- Таймаут, c —
- Нажмите кнопку Сохранить изменения.
- На вкладке Тестирование нажмите кнопку Запустить тест.
- Результат теста — лог импорта данных:
{ "statusCode": 200, "headers": { "Content-Type": "text/plain" }, "isBase64Encoded": false, "body": "OK" }
- Создайте триггер для регулярного экспорта новых данных в БД:
- Откройте раздел Cloud Functions.
- Нажмите
→ Создать триггер. - Укажите тип триггера — Таймер.
- В поле Cron-выражение выберите
Каждый день
. - В разделе Настройки функции нажмите кнопку Создать новый.
- Укажите имя аккаунта. По умолчанию аккаунту присвоена роль
functions.functionInvoker
для работы с триггером. - Нажмите кнопку Создать.
- Нажмите кнопку Создать триггер.
Создайте подключение в DataLens
-
Откройте кластер Managed Service for ClickHouse®.
-
В левой части окна выберите раздел
DataLens. -
Нажмите кнопку Создать подключение.
-
Укажите настройки подключения:
-
Подключение —
Выбрать в каталоге
; -
Кластер — кластер, указанный при создании базы данных;
-
Имя хост — хост, указанный при создании базы данных;
-
Порт HTTP-интерфейса —
8443
; -
Имя пользователя — имя пользователя, указанное при создании базы данных;
-
Пароль — пароль, указанный при создании базы данных;
-
Время жизни кeша в секундах —
По умолчанию
; -
Уровень доступа SQL запросов —
Запретить
; -
HTTPS —
Включено
.
-
-
Нажмите кнопку Создать подключение.
Создайте датасет
- Перейдите на страницу подключений
. - Выберите подключение.
- В правом верхнем углу нажмите кнопку Создать датасет.
- Перенесите на рабочую область одну или несколько таблиц:
db1.v_tracker_issues
— текущий (последний) срез задач;db1.v_tracker_changelog
— история изменения параметров задач;Db1.v_tracker_statuses
– время переходов между статусами на основе истории изменения задач.
- Нажмите кнопку Сохранить.
Создайте чарт
-
Перейдите на главную страницу DataLens
. -
Нажмите кнопку Создать чарт.
-
В левом верхнем углу нажмите
Выберите датасет. -
В выпадающем списке Датасеты выберите датасет, созданный на предыдущем шаге.
-
На верхней панели выберите тип визуализации. По умолчанию выбран тип Столбчатая диаграмма.
Создайте дашборд и добавьте на него чарты
-
На главной странице Yandex DataLens
нажмите Создать дашборд. -
В верхней части страницы дашборда нажмите кнопку Добавить → Чарт.
-
Заполните параметры виджета. Обратите внимание на следующие поля:
- Название. Задает имя виджета. Отображается на верхней части виджета.
- Чарт. Задает добавляемый виджет.
- Описание. Задает описание виджета. Отображается на нижней части виджета.
- Автовысота. Задает автоматическую высоту для виджетов типа Таблица и Markdown. Если параметр отключен, то высоту виджета на странице можно установить с помощью мыши.
-
Нажмите кнопку Добавить. Виджет отобразится на дашборде.
-
Сохраните дашборд:
- В правом верхнем углу дашборда нажмите кнопку Сохранить.
- Введите название дашборда и нажмите Создать.
Подробнее о настройке дашбордов см. в разделе Дашборд Yandex DataLens.
Пример дашборда на основе данных из таблицы v_tracker_issues
Пример дашборда на основе данных по таблице db1.v_tracker_statuses
Как удалить созданные ресурсы
Чтобы перестать платить за созданные ресурсы:
ClickHouse® является зарегистрированным товарным знаком ClickHouse, Inc