Querying Monitoring Data

Function

This API is used to query monitoring data of metrics within a specified time period. You can specify a dimension or period to query data.

URI

POST /v2/{project_id}/ams/metricdata

Table 1 describes the parameters.

Table 1 Parameters

Parameter

Mandatory

Type

Value Range

Description

project_id

Yes

String

-

Project ID obtained from IAM. Generally, a project ID contains 32 characters.

fillValue

No

String

-1, 0, null, and average

Filled value 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.

Request

Request parameters

Table 2 describes the request parameters.

Table 2 Request parameters

Parameter

Mandatory

Type

Value Range

Description

metrics

Yes

JSON array

A maximum of 20 metrics are supported. See Table 3.

List of metrics.

period

Yes

Integer

Enumerated value. Options:

  • 60: The data monitoring granularity is 1 minute.

  • 300: The data monitoring granularity is 5 minutes.

  • 900: The data monitoring granularity is 15 minutes.

  • 3600: The data monitoring granularity is 1 hour.

Data monitoring granularity.

timerange

Yes

String

Format: start time (UTC, in ms).end time (UTC, in ms).number of minutes in the time period. When the start time and end time are -1, it indicates the latest N minutes. N indicates the time period by the granularity of minute.

Query time period. For example, -1.-1.5 indicates the last 5 minutes. 1501545600000.1501632000000.1440 indicates the fixed time period from 08:00:00 on August 1, 2017 to 08:00:00 on August 2, 2017.

Note

Time range/Period <= 1440

The timerange and period must use the same unit.

statistics

Yes

JSON array

maximum, minimum, sum, average, or sampleCount.

Statistic.

Table 3 metrics parameters

Parameter

Mandatory

Type

Value Range

Description

namespace

Yes

String

PAAS.CONTAINER, PAAS.NODE, PAAS.SLA, PAAS.AGGR, and CUSTOMMETRICS.

Metric namespace.

metricName

Yes

String

1-255 characters.

Metric name.

dimensions

Yes

JSON array

Neither the array nor the name/value of any dimension in the array can be left blank.

Metric dimension.

dimensions.name: dimension name. Example: appName.

dimensions.value: dimension value, such as a specific application name.

Request headers

Table 4 describes the request headers.

Table 4 Request headers

Name

Mandatory

Description

X-Auth-Token

Yes

User token obtained from IAM.

Content-Type

Yes

Content type, which is application/json.

Example request

{
    "metrics": [
        {
            "namespace": "abc",
            "metricName": "def",
            "dimensions": [
                {
                    "name": "instance_id",
                    "value": "demo1"
                }
            ]
        }
    ],
    "period": 60,
    "timerange": "-1.-1.5",//Last 5 minutes
      "statistics": [
        "maximum",
        "minimum",
        "sum"
    ]
}

Response

Response parameters

Table 5 describes the response parameters.

Table 5 Response parameters

Parameter

Type

Description

errorCode

String

Response code.

errorMessage

String

Response message.

metrics

JSON object

-

Example response

{
    "errorCode": "AOM.0200",
    "errorMessage": "success",
    "metrics": [{
      "metric": {
        "namespace": "abc",
        "metricName": "def",
        "dimensions": [{
          "name": "ghi",
          "value": "lmn"
        }]
      },
      "dataPoints": [{
        "timestamp": 1467892800000,
        "unit": "Percent",
        "statistics": [{
          "statistic": "maximum",
          "value": 23
        }]
      }]
    }]
}

Status Code

  • Success response

    Table 6 describes the status code.

    Table 6 Status code

    Status Code

    Message

    Description

    200

    OK

    The request has succeeded.

  • Error response

    Table 7 describes the status codes. For more information, see Status Codes.

    Table 7 Status codes

    Status Code

    Message

    Description

    400

    Bad Request

    The request is invalid.

    The client should not repeat the request without modifications.

    401

    Unauthorized

    The authorization information provided by the client is incorrect or invalid.

    403

    Forbidden

    The request is rejected.

    The server has received the request and understood it, but the server is refusing 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 Code

Table 8 Error codes

Error Code

Message

Solution

AOM.0101

Projectid is left blank.

Check whether the parameter meets requirements.

AOM.0102

The metric data parameter is null.

Check whether the parameter meets requirements.

AOM.0103

Invalid period.

Check whether the parameter meets requirements.

AOM.0104

Invalid statistics.

Check whether the parameter meets requirements.

AOM.0105

Invalid metrics.

Check whether the parameter meets requirements.

AOM.0106

Invalid time range.

Check whether the parameter meets requirements.

AOM.0107

The number of data points in a time range exceeds 1440.

Check whether the parameter meets requirements.

AOM.0110

Invalid fillValue.

Check whether the parameter meets requirements.

AOM.0500

Internal server error.

Contact technical support.