API Explorer 936 endpoints

Get Telemetry

GET /obp/v7.0.0/management/telemetry

OBPv7.0.0-getTelemetry Roles: CanGetTelemetry APISystem

Get this OBP-API instance's Telemetry: aggregated numbers about how it is running, such as the number and duration of requests per endpoint, Connector calls per method, cache hits and misses, the database connection pool, the log dispatch queue, memory, garbage collection and threads.

Telemetry is not API Metrics. It never records who made a call; see here.

Which instance answered. Behind a load balancer, each call can reach a different OBP-API instance, and each instance reports only its own figures. The response names the instance that answered with api_instance_id (the same id its API Metrics records carry) and git_commit.

The separate port. On this instance the Telemetry port is not open, so Telemetry can be read only through this endpoint. When it is open, Prometheus collects Telemetry from a separate port of each OBP-API instance, at the path /telemetry. Prometheus should use that port, not this endpoint: the port is read from each instance directly, so figures from different instances are never mixed; it keeps answering when the API is overloaded; and reading it writes no API Metrics record.

Names. Meters are listed under their Micrometer names, with dots. Prometheus shows the same meters with underscores, _total added to counters and _seconds to timers, so obp.api.endpoint.requests appears there as obp_api_endpoint_requests_seconds. OBP-API's own meters start with obp.api.; the others (jvm., hikaricp., cache., process., system.) are standard.

Filter. name_prefix limits the list to meters whose name starts with it, for example ?name_prefix=obp.api.endpoint.

Who may call it. A User with the Role CanGetTelemetry, or an application whose Consumer holds it as a Scope, such as a monitoring service run as a Platform App (see here).

User Authentication is Required. The User must be logged in. The Application must also be authenticated.

This endpoint supports User OR Application authentication. You can authenticate either as a logged-in User (with Entitlements) or as an Application using a Consumer Key (with Scopes). See here for more information.

This endpoint supports User OR Application authentication. You can authenticate either as a logged-in User (with Entitlements) or as an Application using a Consumer Key (with Scopes). See here for more information.

This endpoint supports User OR Application authentication. You can authenticate either as a logged-in User (with Entitlements) or as an Application using a Consumer Key (with Scopes). See here for more information.

JSON response body fields (12)
api_instance_id
api_instance_id
enabled
false
git_commit
59623811dd8a41f6ffe67be46954eee11913dc28
measurements
measurements
meters
meters
name
ACCOUNT_MANAGEMENT_FEE
path
path
port
port
tags
Create-My-User
type
value
5987953
base_unit
base_unit
Example success response
{
  "api_instance_id": "obp_4f6b3c2a-9d1e-4b7a-8c5f-2e1d0a9b8c7d",
  "git_commit": "3286937795b4d0c2e1f6a8b9c0d1e2f3a4b5c6d7",
  "port": {
    "enabled": true,
    "port": 9464,
    "path": "/telemetry"
  },
  "meters": [
    {
      "name": "cache.gets",
      "type": "counter",
      "tags": {
        "cache": "json_schema",
        "result": "hit"
      },
      "measurements": {
        "count": 118
      }
    },
    {
      "name": "jvm.threads.live",
      "type": "gauge",
      "base_unit": "threads",
      "tags": {},
      "measurements": {
        "value": 64
      }
    },
    {
      "name": "obp.api.endpoint.requests",
      "type": "timer",
      "base_unit": "seconds",
      "tags": {
        "operation": "OBPv7.0.0-getBanks",
        "api_version": "v7.0.0",
        "status": "2xx"
      },
      "measurements": {
        "count": 42,
        "total_time": 1.26,
        "max": 0.081
      }
    }
  ]
}
Possible errors (4)
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-20006: User is missing one or more roles:
  • OBP-50000: Unknown Error.
  • OBP-20200: The application cannot be identified.
Implemented by OBPv7.0.0 getTelemetry