Updated on 2025-08-07 GMT+08:00

Querying Monitoring Data

Function

This API is used to query monitoring data of metrics within a specified period. You can specify a dimension or period to query. (This API will not evolve. You are advised to use Querying Expression Calculation Results in a Specified Period Using the POST Method.)

Calling Method

For details, see Calling APIs.

URI

POST /v1/{project_id}/ams/metricdata

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Project ID, which can be obtained from the console or by calling an API. For details, see Obtaining a Project ID.

Table 2 Query Parameters

Parameter

Mandatory

Type

Description

fillValue

No

String

Value filled for breakpoints in monitoring data. Default value: –1.

  • –1: Breakpoints are filled with –1.

  • 0: Breakpoints are filled with 0.

  • null: Breakpoints are filled with null.

  • average: Breakpoints are filled with the average value of adjacent valid data. If there is no valid data, breakpoints are filled with null.

Enumeration values:

  • -1

  • 0

  • null

  • average

Request Parameters

Table 3 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

String

User token obtained from IAM. For details, see Obtaining a Token.

Content-Type

Yes

String

Message body type or format. Content type, which is application/json.

Enumeration values:

  • application/json

Table 4 Request body parameters

Parameter

Mandatory

Type

Description

metrics

Yes

Array of MetricQueryMetricParam objects

Metric list. A JSON array can contain up to 20 objects.

period

Yes

Integer

Monitoring data granularity. Options:

  • 60: The granularity is 1 minute.

  • 300: The granularity is 5 minutes.

  • 900: The granularity is 15 minutes.

  • 3600: The granularity is 1 hour.

statistics

Yes

Array of strings

Statistic.

Values:

maximum, minimum, sum, average, and sampleCount.

timerange

Yes

String

Time range specified to query data of the last N minutes when the client time is inconsistent with the server time. It can also be used to accurately query the data of a specified period.

Example:

  • -1.-1.60: indicates that the data of the latest 60 minutes is queried. This query is based on the server time regardless of the current client time.

  • 1650852000000.1650852300000.5: indicates the five minutes from 10:00:00 to 10:05:00 on April 25, 2022 GMT+08:00.

Format:

startTimeInMillis.endTimeInMillis.durationInMinutes

Parameter description:

  • startTimeInMillis: start time (UTC) of the query, in milliseconds. If this parameter is set to -1, the server calculates the start time as follows: endTimeInMillis – durationInMinutes × 60 × 1000. For example, -1.1650852300000.5 is equivalent to 1650852000000.1650852300000.5.

  • endTimeInMillis: end time (UTC) of the query, in milliseconds. If this parameter is set to -1, the server calculates the end time as follows: startTimeInMillis + durationInMinutes × 60 × 1000. If the calculated end time is later than the current system time, the current system time is used. For example, 1650852000000.-1.5 is equivalent to 1650852000000.1650852300000.5.

  • durationInMinutes: query time span, in minutes. The value must be greater than 0 and greater than or equal to the result of (endTimeInMillis – startTimeInMillis)/(60 ×1000) – 1. If both the start time and end time are set to -1, the system sets the end time to the current UTC time (in milliseconds) and calculates the start time as follows: endTimeInMillis – durationInMinutes × 60 × 1000. For example, -1.-1.60 indicates the latest 60 minutes.

Constraint:

In a single request, the following condition must be met: durationInMinutes × 60/period ≤ 1,440

Table 5 MetricQueryMetricParam

Parameter

Mandatory

Type

Description

dimensions

Yes

Array of Dimension objects

List of time series dimensions. To query the time series dimension list, call the API Querying Time Series Objects. Neither the array nor the name/value of any dimension in the array can be left blank.

metricName

Yes

String

Metric name. Length: 1 to 255 characters. Options: basic metrics (such as cpuUsage and cpuCoreUsed) provided by AOM, and custom metrics. To query metrics, call the API Querying Tag Values.

namespace

Yes

String

Metric namespace. Options:

  • PAAS.CONTAINER: namespace of component, instance, process, and container metrics.

  • PAAS.NODE: namespace of host, network, disk, and file system metrics.

  • PAAS.SLA: namespace of SLA metrics.

  • PAAS.AGGR: namespace of cluster metrics.

  • CUSTOMMETRICS: default namespace of custom metrics.

Custom namespaces are also supported. To query namespaces, call the API Querying Tag Values.

Table 6 Dimension

Parameter

Mandatory

Type

Description

name

Yes

String

Dimension name.

value

Yes

String

Dimension value.

Response Parameters

Status code: 200

Table 7 Response body parameters

Parameter

Type

Description

errorCode

String

Response code.

errorMessage

String

Response message.

metrics

Array of MetricDataValue objects

Metric list.

Table 8 MetricDataValue

Parameter

Type

Description

dataPoints

Array of MetricDataPoints objects

Key metric.

metric

MetricQueryMetricParam object

Query parameters.

Table 9 MetricDataPoints

Parameter

Type

Description

statistics

Array of StatisticValue objects

Statistic.

timestamp

Long

Timestamp.

unit

String

Time series unit.

Table 10 StatisticValue

Parameter

Type

Description

statistic

String

Statistic.

value

Double

Statistical result.

Table 11 MetricQueryMetricParam

Parameter

Type

Description

dimensions

Array of Dimension objects

List of time series dimensions. To query the time series dimension list, call the API Querying Time Series Objects. Neither the array nor the name/value of any dimension in the array can be left blank.

metricName

String

Metric name. Length: 1 to 255 characters. Options: basic metrics (such as cpuUsage and cpuCoreUsed) provided by AOM, and custom metrics. To query metrics, call the API Querying Tag Values.

namespace

String

Metric namespace. Options:

  • PAAS.CONTAINER: namespace of component, instance, process, and container metrics.

  • PAAS.NODE: namespace of host, network, disk, and file system metrics.

  • PAAS.SLA: namespace of SLA metrics.

  • PAAS.AGGR: namespace of cluster metrics.

  • CUSTOMMETRICS: default namespace of custom metrics.

Custom namespaces are also supported. To query namespaces, call the API Querying Tag Values.

Table 12 Dimension

Parameter

Type

Description

name

String

Dimension name.

value

String

Dimension value.

Example Requests

Query the monitoring data of cpuUsage in the PAAS.CONTAINER namespace in the last five minutes.

https://{Endpoint}/v1/{project_id}/ams/metricdata

{
  "metrics" : [ {
    "dimensions" : [ {
      "name" : "appName",
      "value" : "aomApp"
    } ],
    "metricName" : "cpuUsage",
    "namespace" : "PAAS.CONTAINER"
  } ],
  "period" : 60,
  "statistics" : [ "maximum", "minimum", "sum" ],
  "timerange" : "-1.-1.5"
}

Example Responses

Status code: 200

OK: The request is successful.

{
  "errorCode" : "SVCSTG_AMS_2000000",
  "errorMessage" : "success",
  "metrics" : [ {
    "metric" : {
      "namespace" : "PAAS.CONTAINER",
      "metricName" : "cpuUsage",
      "dimensions" : [ {
        "name" : "appName",
        "value" : "aomApp"
      } ]
    },
    "dataPoints" : [ {
      "timestamp" : "1467892800000",
      "unit" : "Percent",
      "statistics" : [ {
        "statistic" : "maximum",
        "value" : "23"
      } ]
    } ]
  } ]
}

Status Codes

Status Code

Description

200

OK: The request is successful.

400

Bad Request: The request is invalid. The client should not repeat the request without modifications.

401

Unauthorized: The authentication information is incorrect or invalid.

403

Forbidden: The request is rejected. The server has received the request and understood it, but the server refuses to respond to it. The client should not repeat the request without modifications.

500

Internal Server Error: The server is able to receive the request but unable to understand the request.

503

Service Unavailable: The requested service is invalid. The client should not repeat the request without modifications.

Error Codes

See Error Codes.