Querying Time Series Data
Function
This API is used to query time series data within a specified time period. You can specify a dimension or period to query.
URI
POST /v2/{project_id}/samples
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
project_id |
Yes |
String |
Project ID obtained from IAM. Generally, a project ID contains 32 characters. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
fill_value |
No |
String |
Value filled for breakpoints in time series 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 the adjacent valid data. If there is no valid data, breakpoints are filled with null. |
Request Parameters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
X-Auth-Token |
Yes |
String |
User token obtained from IAM. |
Content-Type |
Yes |
String |
Content type, which is application/json. |
X-Aom-Prometheus-Id |
No |
String |
Prometheus instance ID. If this parameter is left blank, the default Prometheus instance is used. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
samples |
Yes |
Array of QuerySample objects |
List of time series objects. A JSON array can contain up to 20 objects. |
statistics |
Yes |
Array of strings |
Statistic. Values: maximum, minimum, sum, average, and sampleCount. |
period |
Yes |
Integer |
Granularity for monitoring data. Enumerated value. Values: 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. |
time_range |
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 of the query, in milliseconds. If this parameter is set to -1, the server calculates the start time as follows: endTimeInMillis – durationInMinutes x 60 x 1000. For example, -1.1650852300000.5 is equivalent to 1650852000000.1650852300000.5. endTimeInMillis: End time of the query, in milliseconds. If this parameter is set to -1, the server calculates the end time as follows: startTimeInMillis + durationInMinutes x 60 x 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: Time span, in minutes. The value must be greater than 0 and greater than or equal to the result of "(endTimeInMillis – startTimeInMillis)/(60 x 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 x 60 x 1000. For example, -1.-1.60 indicates the latest 60 minutes. Constraint: In a single request, the following condition must be met: durationInMinutes x 60/period ≤ 1440 |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
namespace |
Yes |
String |
Metric namespace. Values:
|
dimensions |
Yes |
Array of DimensionSeries objects |
List of time series dimensions. Neither the array nor the name or value of any dimension in the array can be left blank. |
metric_name |
Yes |
String |
Time series name. Values: Length: 1–255 characters. |
Response Parameters
Status code: 200
Parameter |
Type |
Description |
---|---|---|
samples |
Array of SampleDataValue objects |
List of time series objects. |
Parameter |
Type |
Description |
---|---|---|
sample |
QuerySample object |
List of time series objects. |
data_points |
Array of MetricDataPoints objects |
Time series data. |
Parameter |
Type |
Description |
---|---|---|
namespace |
String |
Metric namespace. Values:
|
dimensions |
Array of DimensionSeries objects |
List of time series dimensions. Neither the array nor the name or value of any dimension in the array can be left blank. |
metric_name |
String |
Time series name. Values: Length: 1–255 characters. |
Parameter |
Type |
Description |
---|---|---|
statistics |
Array of StatisticValue objects |
Statistic. |
timestamp |
Long |
Timestamp. |
unit |
String |
Time series unit. |
Parameter |
Type |
Description |
---|---|---|
statistic |
String |
Statistic. |
value |
Double |
Statistical result. |
Status code: 400
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. |
error_msg |
String |
Error message. |
error_type |
String |
Error type. |
Example Requests
Querying the monitoring time series data in the last 5 minutes.
POST https://{Endpoint}/v2/{project_id}/samples { "samples" : [ { "namespace" : "abc", "metric_name" : "def", "dimensions" : [ { "name" : "instance_id", "value" : "demo1" } ] } ], "period" : 60, "time_range" : "-1.-1.5", "statistics" : [ "maximum", "minimum", "sum" ] }
Example Responses
Status code: 200
OK
The request is successful.
{ "samples" : [ { "sample" : { "namespace" : "abc", "metric_name" : "def", "dimensions" : [ { "name" : "ghi", "value" : "lmn" } ] }, "data_points" : [ { "timestamp" : "1467892800000", "unit" : "Percent", "statistics" : [ { "statistic" : "maximum", "value" : "23" } ] } ] } ] }
Status code: 400
Bad Request
Invalid request. The client should not repeat the request without modifications.
{ "error_code" : "AOM.04008500", "error_msg" : "internal server error", "error_type" : "INTERNAL_SERVER_ERROR" }
Status Codes
Status Code |
Description |
---|---|
200 |
OK The request is successful. |
400 |
Bad Request Invalid request. The client should not repeat the request without modifications. |
401 |
Unauthorized The authorization 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.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot