Get response time analytics as time series data

get

/apiplatform/analytics/v1/timeSeries/responseTimes/{category}

Returns response time time series data for the API layer or the backend service layer. Use the category parameter to specify the type of measures returned.

This operation returns the intersection of all applied query parameter filters.

Any authenticated user can request this resource. The response contains data the requesting user is authorized to view based on their role and the resources they are issued grants to (APIs, applications, and gateways).

Request

Path Parameters
  • Pattern: (totals|apis|services)
    Type of measure to return. totals shows both API and backend service layer response times, apis shows API layer response times, and services shows service layer response times.
Query Parameters
  • Collection Format: multi
    Filter data by apiIds as repeated query parameters (like ?apiIds=2&apiIds=3) or a single-comma separated query parameter (like ?apiIds=2,3).
  • Collection Format: multi
    Filter data by appIds as repeated query parameters (like ?appIds=2&appIds=3) or a single comma separated query parameter (like ?appIds=2,3).
  • Collection Format: multi
    Filter data by gatewayIds as repeated query parameters (like ?gatewayIds=2&gatewayIds=3) or a single-comma separated query parameter (like ?gatewayIds=2,3).
  • Collection Format: multi

    Split the query results into groups based on repeated query parameters (like ?groupBys=gatewayIds&groupBys=nodeIds) or a single comma separated query parameter (like ?groupBys=gatewayIds,nodeIds). Both of these examples display query results grouped by available gatewayIds and nodeIds.

    Grouping results by gatewayIds, nodeIds, apiIds, and appIds is supported for all endpoints that support the groupBy query parameter. Additionally, grouping query results by policyVersion, policyType, and policyInstanceId are supported for endpoints with policies in the path.

  • Collection Format: multi
    Filter data by iterationIds as repeated query parameters (like ?iterationIds=2&iterationIds=3) or a single comma separated query parameter (like ?iterationIds=2,3).
  • Calculates timeUnit and timeGroupSize automatically given maximum number of time periods (groups).

    Note: This is not accurate for low limit settings.

  • Collection Format: multi
    Filter data by methods as repeated query parameters (like ?methods=GET&methods=PUT) or a single comma separated query parameter (like ?methods=GET,PUT).
  • Collection Format: multi
    Filter data by nodeIds as repeated query parameters (like ?nodeIds=2&appIds=3) or a single comma separated query parameter (like ?nodeIds=2,3).
  • Collection Format: multi
    Filter data by planIds as repeated query parameters (like ?planIds=2&planIds=3) or a single comma separated query parameter (like ?planIds=2,3).
  • Collection Format: multi
    Filter data by serviceIds as repeated query parameters (like ?serviceIds=2&serviceIds=3) or a single comma separated query parameter (like ?serviceIds=2,3).
  • End time filter as ISO8601 offset date. Example: 2016-01-01T00:00:00-07:00, 2016-01-01T00:00:00Z, 2016-01-01T00:00:00. The default value is no filtering. You must use this in conjunction with the timeSetting=custom query parameter.
  • Size of time bucket in number of time units. Defaults to 1. When the timeUnit query parameter is MINUTE, valid values are: 1, 5, 10, 15, 30, 60. When the timeUnit query parameter is HOUR, valid values are: 1, 2, 3, 4, 6, 12, 24. All other time units support only 1 as a valid value.
  • ISO8601 time offset ID. Example: Z. This parameter overrides the time offset of timeStart or timeEnd. This parameter is also used when calculating the start of time groups. The value of this parameter defaults to Z. (GMT).

    Note: Best effort is made to apply this parameter, but its accuracy may be limited by existing data granularity.

  • Time setting mode. Defaults to custom. Valid values include: custom, currentHour, currentWeek, currentMonth, last15minutes, last60minutes, last24hours, last7days, last30days, last365days, january, february, march, april, may, june, july, august, september, october, november, december, year-2015, year-2016, etc.
  • Start time filter as ISO8601 offset date. Example: 2016-01-01T00:00:00-07:00, 2016-01-01T00:00:00Z, 2016-01-01T00:00:00. The default value is no filtering. You must use this in conjunction with the timeSetting=custom query parameter.
  • Time unit to use for time bucket aggregation. Valud values: MINUTE, HOUR, DAY, WEEK, MONTH, and YEAR.
Back to Top

Response

Supported Media Types

200 Response

JSON response with time series data for requests. Each data point contains a median (returned as the measure), high, and low values for the time group period. The median is the average of all gateway node medians.
Body ()
Collection of time series data points.
Root Schema : TimeSeriesCollectionResponse
Type: object
Collection of time series data points.
Show Source
Nested Schema : items
Type: array
The actual response items.
Show Source
Nested Schema : states
Type: array
An optional list for API states. This is null by default.
Show Source
Nested Schema : TimeSeriesTimeMetadata
Type: object
Metadata describing the time parameters used for the database query.
Show Source
Nested Schema : TimeSeriesItem
Type: object
Contains a start time value and measure. Responses for some operations also contain high and low measure fields.
Show Source

400 Response

Bad Request

401 Response

Unauthorized

500 Response

Internal Server Error
Back to Top

Examples

The following example shows how to return response time analytics for the last 30 days for an API with an ID of 161 by submitting a GET request on the REST resource using cURL. For more information about cURL, see Use cURL

curl -i -X GET 
-H "Authorization: Bearer access_token
https://example.com/apiplatform/analytics/v1/timeSeries/responseTimes/totals?apiIds=161&timeUnit=MONTH

Example of Response Headers

The following shows an example of the response headers.

HTTP/1.1 200 OK
Server: Oracle-Traffic-Director/12.2.1.0.0
Date: Fri, 30 Dec 2016 16:27:30 GMT
Content-length: 291
Content-type: application/json
X-oracle-dms-ecid: BVwBZ0DuR00000000
X-oracle-dms-rid: 0:1
Via: 1.1 otd_opc
Proxy-agent: Oracle-Traffic-Director/12.2.1.0.0

Example of Response Body

The following example shows the contents of the response body in JSON format, including the time the data represents (the last 30 days), the time of the initial request, the high response time, the median response time, and the low response time, in milliseconds, for the specified API.

{
  "count": 1,
  "time": {
    "timeEnd": "2017-01-27T19:09:45.571Z",
    "timeSetting": "last30days",
    "timeGroupSize": 1,
    "timeStart": "2016-11-27T19:09:45.571Z",
    "timeOffsetId": "Z",
    "timePeriodMs": 2592000000,
    "timeUnit": "MONTH"
  },
  "items": [
    {
      "start_ts": "2016-12-01T00:00:00Z",
      "high": 7021,
      "measure": 1.2138717,
      "low": 0
    }
  ]
}
Back to Top