Get Time Series Data

Get Time Series Data

Get timeseries metrics data for a given resource_type and resource_id. (use /key-info API to check which keys have 'is_time_series' as 'true') It can be used to fetch raw metrics and aggregated metrics for metrics keys. A distinct metric is defined by combination of resource_type + site_id + node_id + resource_id + obj_id + metric_key. Only a few metric keys support query time aggregation (use /key-info API to check which keys have aggregate_by_resource_ids set to 'true').

Request
URI
POST
https://{api_host}/metrics/data
COPY
Request Body

Metrics data request body, contains list of NSX Resource Intent Paths or UUIDS (for NSX objects without intents), resource type, time interval etc.

MetricsDataRequest of type(s) application/json
Required
This request body class requires all of the following: InlineMetricsDataRequest0 , InlineMetricsDataRequest1
{
    "granularity": "string",
    "start_time": 0,
    "end_time": 0,
    "keys": [
        "string"
    ],
    "resource_type": "string",
    "resource_ids": [
        "string"
    ],
    "aggregate_resource_ids": false,
    "aggregate_operation": "string",
    "max_num_data_points": 0,
    "object_ids": [
        "string"
    ],
    "node_ids": [
        "string"
    ],
    "site_ids": [
        "string"
    ]
}
Authentication
This operation uses the following authentication methods.
Responses
200

OK

Returns MetricsDataResponse of type(s) application/json
"MetricsDataResponse Object"
integer As int64 As int64
start_time
Optional

Epoch time in seconds. Actual start time of the data being reported

integer As int64 As int64
end_time
Optional

Epoch time in seconds. Actual end time of the data being reported

string
granularity
Optional

Granularity of the metrics data required. Defaults are based on below setting - -- If time-range is <= 12 hr, default to 5 min granularity. -- If time-range is > 12 hrs and <= 7 days, default to 1 hr granularity. -- If time-range is more than 7 days, default to 1 day granularity. If you are looking for more coarser value, use this field. E.g If ONE_HOUR is set, system will aggregate all the data points available within one hour and return the aggregated metric value. This field is not relevant (ignored) for "is_status" metrics.

Possible values are : FIVE_MINUTES, ONE_HOUR, ONE_DAY,
string
resource_type
Optional

Resource Type for which metric data was requested for. E.g. PolicyEdgeNode

boolean
is_status_metric
Optional

Set to 'true' when the response is for 'is_status_metric' keys. For these type of metrics, do not expect to see periodic datapoints. These are reported/plotted only when the value of such metrics changes/transitions. If there are no transitions to report in the requested interval (defined by start_time - end_time), 'data' will be empty, and the latest status can be retrieved from 'last_known_value'.

array of object
results
Optional

Collection of per resource metric results


default

Error Response

Returns Error of type(s) application/json
"Error Object"
integer
error_code
Required

HTTP Status or Application error code

string
module_name
Optional

Module where the error happened

string
error_message
Required

Message describing the error


Code Samples
COPY
                    curl -X POST -H 'Authorization: <value>' -H 'Content-Type: application/json' -d '{"keys":["string"],"resource_ids":["string"],"resource_type:"string"}' https://{api_host}/metrics/data