All Products
Search
Document Center

Simple Log Service:GetProjectLogs

最終更新日:Apr 25, 2024

Queries logs in a project by executing an SQL statement.

Usage notes

  • 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 and the region of the project. For more information, see Manage a project.

  • Indexes are configured before you query logs. For more information, see Create indexes.

  • Limits are imposed when you use Log Service to query logs. We recommend that you specify query statements and query time ranges based on the limits. For more information, see Log search overview and Log analysis overview.

  • You can use the query parameter to specify a standard SQL statement.

  • You must specify a Logstore in the FROM clause of the SQL statement. A Logstore can be used as an SQL table.

  • You must specify a time range in the SQL statement by using the __date__ parameter or __time__ parameter. The value of the __date__ parameter is a timestamp, and the value of the __time__ parameter is an integer. The unit of the __time__ parameter is seconds.

Authorization information

The following table shows the authorization information corresponding to the API. The authorization information can be used in the Action policy element to grant a RAM user or RAM role the permissions to call this API operation.

Action

Resource

log:GetProjectLogs

acs:log:{#regionId}:{#accountId}:project/{#ProjectName}

Debugging

OpenAPI Explorer automatically calculates the signature value. For your convenience, we recommend that you call this operation in OpenAPI Explorer. OpenAPI Explorer dynamically generates the sample code of the operation for different SDKs.

Request headers

This operation uses only common request headers. For more information, see Common request headers.

Request syntax

GET /logs HTTP/1.1

Request parameters

Parameter

Type

Position

Required

Example

Description

project

String

Host

Yes

ali-test-project

The name of the project.

query

String

Query

Yes

SELECT COUNT(*) as pv FROM nginx-moni where __time__ > 1646102500 and __time__ < 1646103400

The standard SQL statement. In this example, the SQL statement queries the number of page views (PVs) from 2022-03-01 10:41:40 to 2022-03-01 10:56:40 in a Logstore whose name is nginx-moni.

powerSql

Boolean

Query

No

false

Specifies whether to enable the Dedicated SQL feature. For more information, see Enable Dedicated SQL. Valid values:

  • true

  • false (default): enables the Standard SQL feature.

You can use the powerSql or query parameter to configure Dedicated SQL.

Response parameters

Parameter

Type

Example

Description

x-log-progress

String

Complete

The status of the query and analysis results. Valid values:

  • Complete: The query is successful, and the complete query and analysis results are returned.

  • Incomplete: The query is successful, but the query and analysis results are incomplete. To obtain the complete results, you must repeat the request.

x-log-count

Long

10000

The total number of logs in the query and analysis results.

x-log-processed-rows

Long

10000

The number of lines that are processed based on the request.

x-log-elapsed-millisecond

Long

5

The time that is consumed by the request. Unit: milliseconds.

Server

String

nginx

The name of the server.

Content-Type

String

application/json

The content type of the response body.

Content-Length

String

0

The content length of the response body.

Connection

String

close

Indicates whether the connection is persistent. Valid values: close and keep-alive. close: The connection is non-persistent. A new TCP connection is established for each HTTP request. keep-alive: The connection is persistent. After a TCP connection is established, the connection remains open, and no more time or bandwidth is consumed to establish new connections.

Date

String

Sun, 27 May 2018 08:25:04 GMT

The time at which the response was returned.

x-log-requestid

String

5B0A6B60BB6EE39764D458B5

The request ID.

Array of Object

[ { "__time__" : 1409529660, "__source__" : "192.168.1.100", "Key1" : "error", "Key2" : "Value2" }, { "__time__" : 1409529680, "__source__" : "192.168.1.100", "Key3" : "error", "Key4" : "Value4" } ]

The logs that are returned.

Examples

Sample requests

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

Sample success responses

JSON format

HTTP/1.1 200 OK
Content-Type:application/json

[ {
  "__time__" : 1409529660,
  "__source__" : "192.168.1.100",
  "Key1" : "error",
  "Key2" : "Value2"
}, {
  "__time__" : 1409529680,
  "__source__" : "192.168.1.100",
  "Key3" : "error",
  "Key4" : "Value4"
} ]

Error codes

For a list of error codes, see Service error codes.

HTTP status code

Error code

Error message

Description

400

ParameterInvalid

Parameter is invalid.

A specified parameter is invalid.

For more information, see Common error codes.