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

请求准备数据
日志 API Analytics module 接收请求并将其放入队列。 如果请求成功处理,Analytics module 会准备文件供下载。 在这种情况下,API 返回 HTTP 202 Accepted 状态。 如果请求出错,API 将返回相应的状态码,HTTP 消息体中包含错误描述。
备注
队列中的请求按顺序处理(每个后续请求严格在前一个请求完成后执行)。
在请求处理并准备文件的过程中,所有相同的请求(具有相同的参数)都会返回 HTTP 202 Accepted 状态。
示例请求:
GET /logs/v1/export/installations.json HTTP/1.1
Host: api.boost.yandex.com
Authorization: OAuth <your_token>
其中 <your_token> 是 OAuth 令牌,您可以通过遵循 此指南 获取。
响应示例:
HTTP/1.1 202 Accepted
Content-Type: text/plain
Wait for result
要获取压缩数据,请发送 HTTP Accept-Encoding: gzip 头。
下载数据的请求
下载数据的请求与准备数据的请求相同。 如果文件准备请求已完成,对于下一个相同的请求,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头。
如何提高数据可用性
维护期间部分数据分片可能暂时不可用。 如果需要在特定时间接收样本,并且可以容忍数据的小误差,请使用skip_unavailable_shards参数。 默认设置为假.
当此参数设置为true时,Logs API 仅返回可用分片的数据。 虽然这些样本会不完整,但数据丢失率不会超过1%。
-
如果你的请求返回
logs_api_availability_status=disabled,请在准备数据的请求中包含skip_unavailable_shards=true.如果你的请求返回
logs_api_availability_status=enabled,请保留默认值:skip_unavailable_shards=false.
通过Analytics module接口导出数据
在Analytics module界面中,您可以将数据导出到文件。 要了解更多,请参见导出数据到文件。
如果您没有找到所需答案,可以通过反馈表单提交您的问题。 请尽可能详细地描述问题。 如果可能,请附上截图。