How to set up Digibee API metrics with Prometheus

Learn how to integrate API metrics.

The API Metrics with Prometheus feature is currently in beta phase. Learn more about the Beta Program.

Prometheus is a monitoring platform that provides comprehensive insight into the performance and health of various aspects of an organization’s IT infrastructure, applications, and services.

Requirements

  • The feature must be enabled for your realm.

  • Username and Password generated by the user on the API Management page.

  • API Key to be generated after setting up API credentials mentioned above.

  • Connection between your Prometheus and the Digibee Integration Platform cluster.

Example of usage

Configuration

In your Prometheus job configuration file, add a job configuration as demonstrated below:

...
scrape_configs:
...
- job_name: digibee_platform_<ENVIRONMENT>
  scheme: https
  targets:
    - <DIGIBEE_SERVICES_API_URL>
  metrics_path: /metrics/openmetrics_raw?environment=<ENVIRONMENT>
  params:
    apikey:
      - {DIGIBEE_SERVICES_API_APIKEY}
  basic_auth:
    username: <DIGIBEE_SERVICES_API_USERNAME>
    password: <DIGIBEE_SERVICES_API_PASSWORD>
  honor_timestamps: true
  scrape_interval: 5m
  scrape_timeout: 60s
  follow_redirects: true

Variables

#

Variable name

Description

1

DIGIBEE_SERVICES_API_URL

URL generated on the API Management page after setting up a credential.

2

REALM

Your realm’s name.

3

ENVIRONMENT

Environment to collect metrics from.

4

DIGIBEE_SERVICES_API_APIKEY

Generated after setting up a username and password on the API Management page.

5

DIGIBEE_SERVICES_API_USERNAME

Username created/configured on the API Management page.

6

DIGIBEE_SERVICES_API_PASSWORD

Password created/configured on the API Management page.

Visualizing your data in Prometheus with Grafana

Metric NameDescriptionType

jvm_memory_bytes_committed

Committed (bytes) of a given JVM memory area.

Gauge

jvm_memory_bytes_init

Initial bytes of a given JVM memory area.

Gauge

jvm_memory_bytes_max

Maximum (bytes) of a given JVM memory area.

Gauge

jvm_memory_bytes_used

Used bytes of a given JVM memory area.

Gauge

jvm_memory_pool_bytes_committed

Committed bytes of a given JVM memory pool.

Gauge

jvm_memory_pool_bytes_init

Initial bytes of a given JVM memory pool.

Gauge

jvm_memory_pool_bytes_max

Maximum bytes of a given JVM memory pool.

Gauge

jvm_memory_pool_bytes_used

Used bytes of a given JVM memory pool.

Gauge

pipeline_all_hung

Boolean indicating if all pipeline consumers are hung.

Gauge

pipeline_cached_bytes

Total cached bytes.

Summary

pipeline_component_executions_total

The total number of executions per component.

Counter

pipeline_component_processi_latency_seconds

Component processing latency in seconds.

Summary

pipeline_inflight

Number of currently running (inflight) pipelines.

Gauge

pipeline_inflight_reported_by_camel

Number of currently running (inflight) pipelines reported by Camel.

Gauge

pipeline_jvm_memory_bytes_max

Maximum (bytes) of a given JVM memory area.

Gauge

pipeline_jvm_memory_bytes_used

Used bytes of a given JVM memory area.

Gauge

pipeline_jvm_memory_bytes_used

Used bytes of a given JVM memory area.

Gauge

pipeline_message_error_rate_in_sec

Message error rate per seconds (integer number).

Gauge

pipeline_message_monitoring_processor_latency_seconds

Message monitoring processor latency in seconds.

Counter

pipeline_message_rate_in_sec

Message rate per seconds (integer number).

Gauge

pipeline_message_size_bytes

Message size in bytes.

Summary

pipeline_process_cpu_seconds_total

Total user and system CPU time spent in seconds.

Counter

pipeline_redeliveries

Total number of messages redelivered.

Counter

pipeline_message_size_bytes

Message size in bytes.

Summary

pipeline_process_cpu_seconds_total

Total user and system CPU time spent in seconds.

Counter

Last updated