查询目标Project下的日志,该接口是Project级别的SQL查询接口。
接口说明
- 请求语法中 Host 由 Project 名称和日志服务 Endpoint 构成,您需要在 Host 中指定 Project。
- 已创建并获取 AccessKey。更多信息,请参见访问密钥。
阿里云账号 AccessKey 拥有所有 API 的访问权限,风险很高。强烈建议您创建并使用 RAM 用户进行 API 访问或日常运维。RAM 用户需具备操作日志服务资源的权限。具体操作,请参见创建 RAM 用户及授权。
- 已明确您查询日志所属的 Project 名称、所属地域等。如何查询,请参见管理 Project。
- 查询日志前,已配置索引。具体操作,请参见创建索引。
- 日志服务查询日志时存在使用限制。请设计合理查询与分析语句、设置合理查询区间等。更多信息,请参见查询日志使用限制和分析日志使用限制。
- 参数 query 是一个标准的 SQL 查询语句。
- 查询的 Logstore 在查询语句的 from 条件中指定。可以将 Logstore 看做是 SQL 中的表。
- 在查询的 SQL 条件中必须指定要查询的时间范围,时间范围由__date__(Timestamp 类型)或__time__(Integer 类型,单位是秒)来指定。
鉴权资源
下表列出了 API 对应的授权信息。您可以在 RAM 权限策略语句的 Action 元素中添加该信息,用于为 RAM 用户或 RAM 角色授予调用此 API 的权限。
动作(Action) | 授权策略中的资源描述方式(Resource) |
---|---|
log:GetProjectLogs | acs:log:{#regionId}:{#accountId}:project/{#ProjectName} |
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
授权信息
当前API暂无授权信息透出。
请求语法
GET /logs HTTP/1.1
请求参数
名称 | 类型 | 必填 | 描述 | 示例值 |
---|---|---|---|---|
project | string | 是 | Project 名称。 | ali-test-project |
query | string | 是 | 标准 SQL 语句。例如日志库名称为 nginx-moni,查询时间区间在 2022-03-01 10:41:40 到 2022-03-01 10:56:40 之间的访问数量。 | SELECT COUNT(*) as pv FROM nginx-moni where __time__ > 1646102500 and __time__ < 1646103400 |
powerSql | boolean | 否 | 是否使用 SQL 独享版。更多信息,请参见开启 SQL 独享版。
除通过 powerSql 参数配置 SQL 独享版外,您还可以使用 query 参数。 | false |
请求示例:
GET /logs?query=SELECT COUNT(*) as pv FROM nginx-moni where __time__ > 1646102500 and __time__ < 1646103400&powerSql=false HTTP/1.1
Host:ali-test-project.ch-hangzhou.log.aliyuncs.com
Content-Type:application/json
返回参数
示例
正常返回示例
JSON
格式
[
{
"key": "[ { \"__time__\" : 1409529660, \"__source__\" : \"192.168.1.100\", \"Key1\" : \"error\", \"Key2\" : \"Value2\" }, { \"__time__\" : 1409529680, \"__source__\" : \"192.168.1.100\", \"Key3\" : \"error\", \"Key4\" : \"Value4\" } ]"
}
]
错误码
访问错误中心查看更多错误码。
HttpStatusCode | ErrorCode | ErrorMessage | 错误码描述 |
---|---|---|---|
400 | ParameterInvalid | Parameter is invalid. | 请求的参数错误。 |
更多信息,请参见通用错误码。