REST Adapter Prometheus metrics

This page describes the Prometheus metrics published by Liberator’s REST Adapter.

Since: Platform 8

Process metrics

Metrics for the Java virtual machine (JVM), process, and system running the DataSource.

The JVM metrics available may differ depending on the JVM and garbage collector.

jvm_buffer_count_buffers

An estimate of the number of buffers in the pool.

Type: Gauge

Labels

app_name

DataSource application name

id

Buffer identifier. Examples: 'direct', 'mapped'.

jvm_buffer_memory_used_bytes

An estimate of the memory that the Java virtual machine is using for this buffer pool.

Type: Gauge

Labels

app_name

DataSource application name

id

Buffer identifier. Examples: 'direct', 'mapped'.

jvm_buffer_total_capacity_bytes

An estimate of the total capacity of the buffers in this pool.

Type: Gauge

Labels

app_name

DataSource application name

id

Buffer identifier. Examples: 'direct', 'mapped'.

jvm_gc_live_data_size_bytes

Size of old generation memory pool after a full GC.

Type: Gauge

Labels

app_name

DataSource application name

jvm_gc_max_data_size_bytes

Max size of old generation memory pool.

Type: Gauge

Labels

app_name

DataSource application name

jvm_gc_memory_allocated_bytes_total

Incremented for an increase in the size of the young generation memory pool after one GC to before the next.

Type: Counter

Labels

app_name

DataSource application name

jvm_gc_memory_promoted_bytes_total

Count of positive increases in the size of the old generation memory pool before GC to after GC.

Type: Counter

Labels

app_name

DataSource application name

jvm_gc_pause_seconds

Time spent in GC pause.

Type: Summary

Labels

action

end of major GC, end of minor GC

cause

Metadata GC Threshold, Allocation Failure

jvm_gc_pause_seconds_max

Time spent in GC pause

Type: Gauge

Labels

action

end of major GC, end of minor GC

cause

Metadata GC Threshold, Allocation Failure

jvm_memory_committed_bytes

The amount of memory in bytes that is committed for the Java virtual machine to use

Type: Gauge

Labels

app_name

DataSource application name

area

heap, nonheap

id

memory block identifier. Examples: "G1 Eden Space", "G1 Old Gen"

jvm_memory_max_bytes

The maximum amount of memory in bytes that can be used for memory management

Type: Gauge

Labels

app_name

DataSource application name

area

heap, nonheap

id

memory block identifier. Examples: "G1 Eden Space", "G1 Old Gen"

jvm_memory_used_bytes

The amount of used memory.

Type: Gauge

Labels

app_name

DataSource application name

area

heap, nonheap

id

memory block identifier. Examples: "G1 Eden Space", "G1 Old Gen"

jvm_threads_daemon_threads

The current number of live daemon threads.

Type: Gauge

Labels

app_name

DataSource application name

jvm_threads_live_threads

The current number of live threads including both daemon and non-daemon threads.

Type: Gauge

Labels

app_name

DataSource application name

jvm_threads_peak_threads

The peak live thread count since the Java virtual machine started or peak was reset.

Type: Gauge

Labels

app_name

DataSource application name

jvm_threads_states_threads

The current number of threads having NEW state.

Type: Gauge

Labels

app_name

DataSource application name

state

runnable, blocked, waiting, timed-waiting, new, terminated

process_cpu_usage

The "recent cpu usage" for the Java Virtual Machine process.

Type: Gauge

Labels

app_name

DataSource application name

process_start_time_seconds

Start time of the process since Unix epoch.

Type: Gauge

Labels

app_name

DataSource application name

process_uptime_seconds

The uptime of the Java virtual machine.

Type: Gauge

Labels

app_name

DataSource application name

system_cpu_count

The number of processors available to the Java virtual machine.

Type: Gauge

Labels

app_name

DataSource application name

system_cpu_usage

The "recent cpu usage" for the whole system.

Type: Gauge

Labels

app_name

DataSource application name

system_load_average_1m

The sum of the number of runnable entities queued to available processors and the number of runnable entities running on the available processors averaged over a period of time.

Type: Gauge

Labels

app_name

DataSource application name

DataSource metrics

Metrics for Java DataSources.

datasource_cached_publisher_subscriptions

Type: Gauge

Labels

app_name

DataSource application name

name

Cached publisher identifier

datasource_cached_publisher_messages_total

Type: Gauge

Labels

app_name

DataSource application name

name

Cached publisher identifier

datasource_system_threads_delayed

Count of delayed threads that have been delayed for 5 seconds or more. Delayed threads are an indication that the DataSource is under high load or that threads have locked up.

Type: Gauge

Labels

app_name

DataSource application name

DataSource peer metrics

Metrics for Java DataSource peer connections.

datasource_bytes_read

Type: Gauge

Labels

app_name

DataSource application name

peer_name

DataSource peer identifier

datasource_bytes_written

Type: Gauge

Labels

app_name

DataSource application name

peer_name

DataSource peer identifier

datasource_discard_average

Average duration of discarded requests from a DataSource peer. To configure the update frequency for this metric, see peer-debug-metrics-interval.

Type: Gauge

Labels

app_name

DataSource application name

peer_name

DataSource peer identifier

datasource_discard_count

Total number of discarded requests from a DataSource peer. To configure the update frequency for this metric, see peer-debug-metrics-interval.

Type: Counter

Labels

app_name

DataSource application name

peer_name

DataSource peer identifier

datasource_discard_max

Duration in milliseconds of the longest discarded request from a DataSource peer. To configure the update frequency for this metric, see peer-debug-metrics-interval.

Type: Gauge

Labels

app_name

DataSource application name

peer_name

DataSource peer identifier

datasource_executor_queue_length

Total number of requests from a DataSource peer that are pending execution. To configure the update frequency for this metric, see peer-debug-metrics-interval.

Type: Counter

Labels

app_name

DataSource application name

peer_name

DataSource peer identifier

datasource_messages_read

Type: Gauge

Labels

app_name

DataSource application name

peer_name

DataSource peer identifier

datasource_netty_bytes_before_writable

How many bytes remain in underlying buffers until a thread can begin to process queued requests. See Channel.bytesBeforeWritable() for more information. To configure the update frequency for this metric, see peer-debug-metrics-interval.

Type: Gauge

Labels

app_name

DataSource application name

peer_name

DataSource peer identifier

datasource_netty_bytes_before_unwritable

How many bytes can be written to underlying buffers until a thread must add new requests to the queue rather than process them immediately. See Channel.bytesBeforeUnwritable() for more information. To configure the update frequency for this metric, see peer-debug-metrics-interval.

Type: Gauge

Labels

app_name

DataSource application name

peer_name

DataSource peer identifier

datasource_messages_written

Total number of messages written to a specific DataSource peer.

Type: Gauge

Labels

app_name

DataSource application name

peer_name

DataSource peer identifier

datasource_ping_pong_time

Average of the last ten heartbeat round-trip times.

Type: Gauge

Labels

app_name

DataSource application name

peer_name

DataSource peer identifier

datasource_request_average

Average duration of requests from a DataSource peer. To configure the update frequency for this metric, see peer-debug-metrics-interval.

Type: Gauge

Labels

app_name

DataSource application name

peer_name

DataSource peer identifier

datasource_request_count

Total number of requests made from a DataSource peer. To configure the update frequency for this metric, see peer-debug-metrics-interval.

Type: Counter

Labels

app_name

DataSource application name

peer_name

DataSource peer identifier

datasource_request_max

Duration in milliseconds of the longest request from a DataSource peer. To configure the update frequency for this metric, see peer-debug-metrics-interval.

Type: Gauge

Labels

app_name

DataSource application name

peer_name

DataSource peer identifier

REST metrics

The REST Adapter publishes the following Prometheus metrics.

Prometheus metrics are not published by default. For instructions, see Configure DataSource Prometheus monitoring.

restadapter_global_requests

The total number of requests handled by the REST Adapter since startup.

Type: Counter

restadapter_global_current_requests

The number of requests currently being handled by the REST Adapter.

Type: Gauge

restadapter_endpoints_requests

The number of REST Adapter requests sent to each REST service since startup.

Type: Counter

Labels

namespace

Subject prefix

Labels
  • namespace="subject_prefix"

restadapter_endpoints_responses

The number of responses to the REST Adapter from requests sent to each REST service since startup.

Type: Counter

Labels

namespace

Subject prefix

result

Possible values: 'ok', 'error'

status_code

HTTP status code

restadapter_endpoints_bytes_sent

The total number of bytes sent from the REST Adapter to each REST service as request payload since startup.

Type: Counter

Labels

namespace

Subject prefix

restadapter_endpoints_bytes_received

The total number of bytes received by the REST Adapter from each REST service as response payload since startup.

Type: Counter

Labels

namespace

Subject prefix