---
metadata:
  - name: generator
    content: Diplodoc Platform v5.64.0
alternate:
  - https://boost.yandex.com/doc/en/analytics/content/mobile-api/logs/request-procedure.md
  - https://boost.yandex.com/doc/ru/analytics/content/mobile-api/logs/request-procedure.md
  - https://boost.yandex.com/doc/zh/analytics/content/mobile-api/logs/request-procedure.md
  - href: https://boost.yandex.com/doc/zh/analytics/content/mobile-api/logs/request-procedure.md
    type: text/markdown
    title: Markdown version
  - href: https://boost.yandex.com/doc/zh/llms.txt?revision=r21772739
    rel: describedby
---
> **Documentation Index:** Fetch the complete configuration index at https://boost.yandex.com/doc/zh/llms.txt?revision=r21772739

# 请求流程

对于 Analytics module Logs API，请求流程分为两个阶段：

![请求流程](../../../_images/logsapi-scheme-zh.png)

## 请求准备数据 {#request-data-processing}

日志 API Analytics module 接收请求并将其放入队列。 如果请求成功处理，Analytics module 会准备文件供下载。 在这种情况下，API 返回 HTTP `202 Accepted` 状态。 如果请求出错，API 将返回相应的状态码，HTTP 消息体中包含错误描述。

{% note info %}

队列中的请求按顺序处理（每个后续请求严格在前一个请求完成后执行）。

{% endnote %}

在请求处理并准备文件的过程中，所有相同的请求（具有相同的参数）都会返回 HTTP `202 Accepted` 状态。

示例请求：

```no-highlight translate=no
GET /logs/v1/export/installations.json HTTP/1.1
Host: api.boost.yandex.com
Authorization: OAuth <your_token>
```

其中 `<your_token>` 是 OAuth 令牌，您可以通过遵循 [此指南](https://boost.yandex.com/doc/zh/analytics/content/mobile-api/intro/authorization.md#get-oauth-token) 获取。

响应示例：

```no-highlight translate=no
HTTP/1.1 202 Accepted
Content-Type: text/plain

Wait for result
```

要获取压缩数据，请发送 HTTP `Accept-Encoding: gzip` 头。

## 下载数据的请求 {#request-data-uploading}

下载数据的请求与准备数据的请求相同。 如果文件准备请求已完成，对于下一个相同的请求，Logs API 会返回 `200 OK` 状态。 结果文件已准备好下载。

文件在初始请求的 URL 处可供下载 24 小时。 在距离上次请求24小时后再次请求时，请求会被放入队列，进行处理并准备新文件。

您可以通过 HTTP `Cache-Control` 头强制重新生成文件：

- 要生成新文件，请在请求中发送 `Cache-Control: no-cache` 头。
- 要下载在最近 N 秒内生成的文件，请在请求中发送 `Cache-Control: max-age=N` 头。 如果文件创建时间超过 N 秒，Analytics module 将生成一个新文件。
- 要下载最后生成的文件（如果存在），请不要在请求中发送 `Cache-Control` 头。

## 如何提高数据可用性 {#availability}

维护期间部分数据分片可能暂时不可用。 如果需要在特定时间接收样本，并且可以容忍数据的小误差，请使用`skip_unavailable_shards`参数。 默认设置为`假`. 

当此参数设置为`true`时，Logs API 仅返回可用分片的数据。 虽然这些样本会不完整，但数据丢失率不会超过1%。 

1. 检查[Logs API 是否可用](https://boost.yandex.com/doc/zh/analytics/content/mobile-api/logs/logs-api-status.md)。 

2. 如果你的请求返回 `logs_api_availability_status` = `disabled`，请在准备数据的请求中包含 `skip_unavailable_shards` = `true`. 

    如果你的请求返回 `logs_api_availability_status` = `enabled`，请保留默认值：`skip_unavailable_shards` = `false`.

## 通过Analytics module接口导出数据 {#data-export}

在Analytics module界面中，您可以将数据导出到文件。 要了解更多，请参见[导出数据到文件](https://boost.yandex.com/doc/zh/analytics/content/common/export.md)。


<!-- source: zh/analytics/content/_includes/feedback-button-2.md -->
如果您没有找到所需答案，可以通过反馈表单提交您的问题。 请尽可能详细地描述问题。 如果可能，请附上截图。

<a href="../troubleshooting/feedback-new">
  <span class="button">联系支持</span>
</a>

<a href="../troubleshooting/feedback-docs">
  <span class="button">建议改进文档</span>
</a>
<!-- endsource: zh/analytics/content/_includes/feedback-button-2.md -->
