Instana Application Metrics API
The endpoints of this group retrieve the metrics for defined applications, discovered services and endpoints.### Mandatory Parameters**metrics** A list of metric objects that define which metric should be returned, with the defined aggregation. Each metrics objects consists of minimum two items:1. *metric* select a particular metric to get a list of available metrics query the [catalog endpoint](#operation/getApplicationCatalogMetrics).2. *aggregation* depending on the selected metric different aggregations are available e.g. SUM, MEAN, P95. The aforementioned [catalog endpoint](#operation/getApplicationCatalogMetrics) gives you the metrics with the available aggregations.**Note**: The above mentioned list of available metrics with its supported metrics can also be found in the section **Supported Aggregation on Application metrics** below.### Optional Parameters**metrics** Default you will get an aggregated metric with for the selected timeframe * *granularity* * If it is not set you will get a an aggregated value for the selected timeframe * If the granularity is set you will get data points with the specified granularity **in seconds** * The granularity should not be greater than the `windowSize` (important: `windowSize` is expressed in **milliseconds**) * The granularity should not be set too small relative to the `windowSize` to avoid creating an excessively large number of data points (max 600) **pagination** if you use pagination you most probably want to fix the timeFrame for the retrieved metrics1. *page* select the page number you want to retrieve2. *pageSize* set the number of applications you want to return with one query**order** You can order the returned items alphanumerical by label, either ascending or descending1. *by* if the granularity is set to 1 you can use the metric name eg. "latency.p95" to order by that value1. *direction* either ascending or descending**timeFrame** As in our UI you can specify the timeframe for metrics retrieval.``` windowSize to (ms) (unix-timestamp)<----------------------|```The timeFrame might be adjusted to fit the metric granularity so that there is no partial bucket. For example, if the query timeFrame is 08:02 - 09:02 and the metric granularity is 5 minutes, the timeFrame will be adjusted to 08:05 - 09:00. The adjusted timeFrame will be returned in the response payload. If the query does not have any metric with granularity, a default granularity will be used for adjustment.To narrow down the result set you have four options to search for an application.**nameFilter | applicationId | serviceId | endpointId*** *nameFilter:* filter by name with "contains" semantic.* *applicationId:* search directly for an application by applicationId * *serviceId:* search for applications that include a particular service by serviceId* *endpointId:* search for applications that include a particular endpoint by endpointId### Defaults**metrics*** *granularity:* 1**order*** by application label ascending.**timeFrame**```"timeFrame": { "windowSize": 60000, "to": {current timestamp}}```**nameFilter | applicationId | serviceId | endpointId*** no filters are applied in the default call## Supported Aggregation on Application Metrics| Metric | Description | Allowed Aggregations ||------------------|--------------------------------------------------------------------------------------------|----------------------|| `calls` | Number of received calls | `PER_SECOND`, `SUM` || `erroneousCalls` | The number of erroneous calls |`PER_SECOND`, `SUM` || `latency` | Latency of received calls in milliseconds | `P25`, `P50`, `P75`, `P90`, `P95`, `P98`, `P99`, `SUM`, `MEAN`, `MAX`, `MIN` || `errors` | Error rate of received calls. A value between 0 and 1 | `MEAN` || `applications` | The number of Application Perspectives |`DISTINCT_COUNT` || `services` | The number of Services |`DISTINCT_COUNT` || `endpoints` | The number of Endpoints |`DISTINCT_COUNT` || `http.1xx` | Counts the number of occurrences of HTTP status codes where 100 <= status code <= 199 |`PER_SECOND`, `SUM` || `http.2xx` | Counts the number of occurrences of HTTP status codes where 200 <= status code <= 299 |`PER_SECOND`, `SUM` || `http.3xx` | Counts the number of occurrences of HTTP status codes where 300 <= status code <= 399 |`PER_SECOND`, `SUM` || `http.4xx` | Counts the number of occurrences of HTTP status codes where 400 <= status code <= 499 |`PER_SECOND`, `SUM` || `http.5xx` | Counts the number of occurrences of HTTP status codes where 500 <= status code <= 599 |`PER_SECOND`, `SUM` |
Instana Application Metrics API is one of 62 APIs that Instana publishes on the APIs.io network, described by a machine-readable OpenAPI specification.
Tagged areas include Application Metrics. The published artifact set on APIs.io includes an OpenAPI specification and API documentation.
This API exposes 4 operations across 4 paths, and defines 20 schemas. It is described by OpenAPI 3.0.1, at version 1.307.1417.
Requests are made against 2 base URLs: https://{unit}-{tenant}.instana.io, https://{domain}.
Metadata
The identity and technical contract details declared by the specification.
Authentication & Security 1
Instana Application Metrics API declares
1 security scheme
for authenticating requests.
An API key is passed in the header as authorization (ApiKeyAuth).
ApiKeyAuth— Example bash curl --request GET \ --url https://test-instana.instana.io/api/application-monitoring/catalog/metrics \ --header 'authorization: apiToken xxxxxxxx…
Paths & Operations 4
Across 4 paths, the API surfaces 4 operations — 4 POST. Each is listed below with its method, path, parameters, and response codes.
The endpoints of this group retrieve the metrics for defined applications, discovered services and endpoints. Mandatory Parameters metrics A list of metric objects that define whi…
Schemas 20
The contract defines 20 schemas that model the data the API accepts and returns. The most detailed are GetEndpoints (11 properties), GetApplications (11 properties), GetServices (10 properties), Endpoint (9 properties). Each schema is shown below with its type and property counts.
Specification
The full machine-readable OpenAPI contract behind this narrative.
Source
More from Instana 12
Other APIs Instana publishes across the network.