Процедура запроса
Процедуру запроса к AppMetrica Logs API можно разделить на два этапа:
Запрос на подготовку данных
AppMetrica Logs API принимает запрос и помещает его в очередь для обработки. Если запрос обработан корректно, AppMetrica подготавливает файл для выгрузки. В этом случае API возвращает HTTP-статус 202 Accepted
. Если запрос вызвал ошибку, возвращается подходящий код ответа, а тело ответа содержит описание ошибки.
Примечание
Запросы в очереди обрабатываются последовательно (каждый последующий выполняются строго после завершения предыдущего).
Во время выполнения запроса и подготовки файла, все идентичные запросы (с такими же параметрами) вернут HTTP-статус 202 Accepted
.
Пример запроса:
GET /logs/v1/export/installations.json HTTP/1.1
Host: api.appmetrica.yandex.ru
Authorization: OAuth <your_token>
где <your_token>
— это OAuth-токен, который можно получить по инструкции.
Пример ответа:
HTTP/1.1 202 Accepted
Content-Type: text/plain
Wait for result
Чтобы получать данные в сжатом виде, необходимо в запросе передать HTTP заголовок Accept-Encoding: gzip
.
Как повысить доступность данных
Во время проведения технических работ некоторые шарды с данными могут оказаться временно недоступными. Если вам важно получить данные строго в определенный момент и небольшая погрешность в данных некритична, используйте параметр skip_unavailable_shards
. По умолчанию он равен false
.
Если установить параметр в значение true
, Logs API вернет данные только с доступных шардов. При этом выборка будет неполной, но потери данных составят менее 1%.
-
Проверьте доступность Logs API.
-
Если запрос вернул
logs_api_availability_status
=disabled
, в запросе на подготовку данных используйтеskip_unavailable_shards
=true
.Если запрос вернул
logs_api_availability_status
=enabled
, оставьте значение по умолчаниюskip_unavailable_shards
=false
.
Запрос на выгрузку данных
Запрос на выгрузку данных идентичен запросу на подготовку. Если запрос на подготовку файла завершен, при следующем идентичном запросе Logs API возвращает HTTP-статус 200 OK
. Файл с результатом запроса готов к загрузке.
Файл доступен для загрузки в течение 24 часов по URL первоначального запроса. При повторном запросе по истечении 24 часов, запрос помещается в очередь для обработки и формирования нового файла.
Вы можете вручную запросить повторную обработку запроса с помощью HTTP заголовка Cache-Control
:
- Для формирования нового файла отправить при запросе заголовок
Cache-Control: no-cache
. - Для скачивания файла, который сформирован не более чем N секунд назад, отправить при запросе заголовок
Cache-Control: max-age=N
. Если файл был создан более чем N секунд назад, AppMetrica формирует новый файл. - Для скачивания последнего сформированного файла, если он существует, не отправлять при запросе заголовок
Cache-Control
.
Если вы не нашли ответ на свой вопрос, то вы можете задать его через форму обратной связи. Пожалуйста, опишите возникшую проблему как можно подробнее. Если возможно, приложите скриншот.