Подключение Logs API к ClickHouse
ClickHouse позволяет работать с неагрегированными статистическими данными Яндекс.Метрики, полученными с помощью Logs API. Чтобы подключить Logs API к ClickHouse, выполните следующее:
-
Загрузите Python-скрипт для интеграции. Это можно сделать с помощью команды git clone.
git clone https://github.com/yndx-metrika/logs_api_integration.git
-
Внесите изменения в конфигурационный файл (config.json), который находится в каталоге configs:
{ "token" : "<your_token>", // токен для доступа к API Яндекс.Метрики "counter_id": "<your_counter_id>", // номер счетчика "visits_fields": [ // список параметров визитов "ym:s:counterID", "ym:s:dateTime", "ym:s:date", "ym:s:firstPartyCookie" ], "hits_fields": [ // список параметров хитов "ym:pv:counterID", "ym:pv:dateTime", "ym:pv:date", "ym:pv:firstPartyCookie" ], "log_level": "INFO", // уровень логирования "retries": 1, // количество попыток перезапустить скрипт в случае ошибки "retries_delay": 60, // перерыв между попытками "clickhouse": { "host": "http://localhost:8123", // адрес поднятого инстанса ClickHouse "user": "", // логин для доступа к БД "password": "", // пароль для доступа в БД "visits_table": "visits_all", // имя таблицы для хранения визитов "hits_table": "hits_all", // имя таблицы для хранения хитов "database": "default" // имя базы данных для таблиц } }
-
Запустите скрипт. При запуске скрипта необходимо указать источник данных (просмотры или визиты) с помощью опции -source. Скрипт может работать в нескольких режимах:
- history — чтобы выгрузить все данные с даты создания счетчика Яндекс.Метрики до позавчерашнего дня;
- regular— чтобы выгрузить данные за позавчера (рекомендуем использовать данный режим для регулярных выгрузок);
- regular_early — чтобы выгрузить данные за вчерашний день.
Пример запуска программы:
python metrica_logs_api.py -mode history -source visits
Кроме этого, вы можете получить данные за определенный промежуток времени:
python metrica_logs_api.py -source hits -start_date 2016-10-10 -end_date 2016-10-18