Queries logs based on the specified cursors.
Usage notes
- You must specify the shard from which you want to query logs.
- You can query only logs in the Protocol Buffers (Protobuf) format. For more information, see Data encoding.
- Host consists of a project name and a Log Service endpoint. You must specify a project in Host.
An AccessKey pair is created and obtained. For more information, see AccessKey pair.
The AccessKey pair of an Alibaba Cloud account has permissions on all API operations. Using these credentials to perform operations in Log Service is a high-risk operation. We recommend that you use a RAM user to call API operations or perform routine O&M. To create a RAM user, log on to the RAM console. Make sure that the RAM user has the management permissions on Log Service resources. For more information, see Create a RAM user and authorize the RAM user to access Log Service.
- The information that is required to query logs is obtained. The information includes the name of the project to which the logs belong, the region of the project, and the name of the Logstore to which the logs belong. For more information, see Manage a project and Manage a Logstore.
- The required cursors are obtained. For more information, see GetCursor.
Authentication resources
The following table describes the authorization information that is required for this operation. You can add the information to the Action element of a RAM policy statement to grant a RAM user or a RAM role the permissions to call this operation.
Action | Resource |
log:GetCursorOrData | acs:log:{#regionId}:{#accountId}:project/{#ProjectName}/logstore/{#LogstoreName} |
Debugging
Request headers
This operation uses common request headers. For more information, see Common request headers.
Request syntax
GET /logstores/{logstore}/shards/{shard}?type=log HTTP/1.1
Request parameters
Parameter | Type | Position | Required | Example | Description |
project | String | Host | Yes | ali-test-project | The name of the project. |
logstore | String | Path | Yes | ali-test-logstore | The name of the Logstore. |
shard | String | Path | Yes | 0 | The ID of the shard. |
cursor | String | Query | Yes | MTQ0NzMyOTQwMTEwMjEzMDkwNA | The start cursor from which the system starts to read logs. Note If the value of the cursor parameter is less than Begin Cursor, the system starts to query logs from Begin Cursor. |
count | String | Query | Yes | 1000 | The number of log groups to return. Valid values: 1 to 1000. |
endCursor | String | Query | No | MTU1NzA1NzQwMTEwMjEzMDkwCg | The end cursor at which the system stops reading logs. Note If the value of the cursor parameter is greater than End Cursor, the system returns an empty list. |
This operation uses the following operation-specific request headers:
- Accept: application/x-protobuf
- Accept-Encoding: lz4
The valid values of the Accept-Encoding header are lz4, deflate, and a pair of double quotation marks ("").
Response parameters
Parameter | Type | Example | Description |
Server | String | nginx | The name of the server. |
Content-Type | String | application/json | The type of the response body. |
Content-Length | String | 0 | The length of the response body. |
Connection | String | close | Indicates whether the connection is persistent. Valid values:
|
x-log-compresstype | String | * | The compression format. |
Date | String | Sun, 27 May 2018 08:25:04 GMT | The time when the response was returned. |
x-log-requestid | String | 5B0A6B60BB6EE39764D458B5 | The request ID. |
x-log-count | String | 5 | The number of returned log groups. |
x-log-cursor | String | MTQ0NzMyOTQwMTEwMjEzMDkwNA | The cursor of the next log. |
x-log-bodyrawsize | String | 0 | The size of data before compression. |
This operation uses the following operation-specific response parameters:
- x-log-cursor: the cursor of the log that follows the position at which the system stops reading logs.
- x-log-end_cursor: the cursor at which the system stops reading logs.
- x-log-count: the number of returned logs.
The response parameters are serialized data in the Protobuf format, which may be compressed.
Examples
Sample requests
GET /logstores/ali-test-logstore/shards/{shard}?type=log?cursor=MTQ0NzMyOTQwMTEwMjEzMDkwNA&count=1000&endCursor=MTU1NzA1NzQwMTEwMjEzMDkwCg HTTP/1.1
Host:ali-test-project.cn-hangzhou.log.aliyuncs.com
Content-Type:application/json
Sample success responses
JSON
format
HTTP/1.1 200 OK
Error codes
For a list of error codes, see Service error codes.
HTTP status code | Error code | Error message | Description |
400 | ParameterInvalid | Invalid cursor. | The specified cursors are invalid. |
400 | ParameterInvalid | ParameterCount should be in [0-1000]. | The value of the count parameter is invalid. The valid values of the count parameter are within the range of 0 to 1000. |
404 | ProjectNotExist | Project does not exist. | The specified project does not exist. |
404 | LogStoreNotExist | Logstore does not exist. | The specified Logstore does not exist. |
404 | ShardNotExist | Shard does not exist. | The specified shard does not exist. |
500 | InternalServerError | Specified Server Error Message. | An internal server error has occurred. |
For more information, see Common error codes.