PingGateway 2024.9

Metrics at the Prometheus Scrape Endpoint

PingGateway exposes a monitoring endpoint where Prometheus can scrape metrics in a standard Prometheus format. Learn more from the Prometheus website.

When PingGateway is set up as described in the Quick install, the Prometheus Scrape Endpoint is available at the following endpoints:

  • http://ig.example.com:8080/openig/metrics/prometheus/0.0.4

  • http://ig.example.com:8080/openig/metrics/prometheus (deprecated)

Learn to query the Prometheus Scrape Endpoint in Monitor the Prometheus Scrape Endpoint.

Some ig_jvm_* metrics depend on the JVM version and configuration. In particular, GC-related metrics depend on the garbage collector that the server uses. The GC metric names are unstable and can change even in a minor JVM release.

Name Type Description

ig_cache_evictions_count{cause,content,fully_qualified_name,heap,name,route,router}

Summary

Cache eviction observations

ig_cache_evictions_sum{cause,content,fully_qualified_name,heap,name,route,router}

Summary

Cache eviction observations

ig_cache_gets_total{content,fully_qualified_name,heap,name,result,route,router}

Counter

Incremented when a cache request hits or misses an entry

ig_cache_loads_seconds_count{content,fully_qualified_name,heap,name,result,route,router}

Summary

Time spent successfully or unsuccessfully loading entries in the cache; the "content" label is one of: "access_token", "policy_decision", "session", "user_profile"

ig_cache_loads_seconds_sum{content,fully_qualified_name,heap,name,result,route,router}

Summary

Time spent successfully or unsuccessfully loading entries in the cache; the "content" label is one of: "access_token", "policy_decision", "session", "user_profile"

ig_cache_loads_seconds{content,fully_qualified_name,heap,name,result,route,router,quantile}

Summary

Time spent successfully or unsuccessfully loading entries in the cache; the "content" label is one of: "access_token", "policy_decision", "session", "user_profile"

ig_http_client_active_connections{local,remote}

Gauge

Number of connections to the remote host currently open

ig_http_client_active_requests{local,method,remote}

Gauge

Number of requests waiting for a response

ig_http_client_active_ws_connections{local,remote}

Gauge

Number of websockets currently open

ig_http_client_bytes_read_total{local,remote}

Counter

Number of bytes received from the remote host

ig_http_client_bytes_read{local,remote}

Counter

[Deprecated] Number of bytes received from the remote host

ig_http_client_bytes_written_total{local,remote}

Counter

Number of bytes sent to the remote host

ig_http_client_bytes_written{local,remote}

Counter

[Deprecated] Number of bytes sent to the remote host

ig_http_client_queue_pending{local,remote}

Gauge

Number of pending elements in queue

ig_http_client_queue_time_seconds_count{local,remote}

Summary

Time spent in queue before being processed

ig_http_client_queue_time_seconds_sum{local,remote}

Summary

Time spent in queue before being processed

ig_http_client_queue_time_seconds{local,remote,quantile}

Summary

Time spent in queue before being processed

ig_http_client_request_bytes_count{local,method,remote}

Summary

Size of requests in bytes

ig_http_client_request_bytes_sum{local,method,remote}

Summary

Size of requests in bytes

ig_http_client_requests_total{local,method,remote}

Counter

Number of requests sent

ig_http_client_requests{local,method,remote}

Counter

[Deprecated] Number of requests sent

ig_http_client_response_bytes_count{code,local,method,remote}

Summary

Size of responses in bytes

ig_http_client_response_bytes_sum{code,local,method,remote}

Summary

Size of responses in bytes

ig_http_client_response_time_seconds_count{code,local,method,remote}

Summary

Response time

ig_http_client_response_time_seconds_sum{code,local,method,remote}

Summary

Response time

ig_http_client_response_time_seconds{code,local,method,remote,quantile}

Summary

Response time

ig_http_client_responses_total{code,local,method,remote}

Counter

Response count with codes

ig_http_client_responses{code,local,method,remote}

Counter

[Deprecated] Response count with codes

ig_http_server_active_connections{local}

Gauge

Number of open connections to the server

ig_http_server_active_requests{local}

Gauge

Number of requests being processed

ig_http_server_active_ws_connections{local}

Gauge

Number of websockets currently open

ig_http_server_bytes_read_total{local}

Counter

Number of bytes received by the server

ig_http_server_bytes_read{local}

Counter

[Deprecated] Number of bytes received by the server

ig_http_server_bytes_written_total{local}

Counter

Number of bytes sent by the server

ig_http_server_bytes_written{local}

Counter

[Deprecated] Number of bytes sent by the server

ig_http_server_errors_total{class,local}

Counter

Number of errors

ig_http_server_errors{class,local}

Counter

[Deprecated] Number of errors

ig_http_server_request_bytes_count{local,method}

Summary

Size of requests in bytes

ig_http_server_request_bytes_sum{local,method}

Summary

Size of requests in bytes

ig_http_server_request_resets_total{local,method}

Counter

Number of request resets

ig_http_server_request_resets{local,method}

Counter

[Deprecated] Number of request resets

ig_http_server_requests_total{local,method}

Counter

Number of processed requests

ig_http_server_requests{local,method}

Counter

[Deprecated] Number of processed requests

ig_http_server_response_bytes_count{code,local,method}

Summary

Size of responses in bytes

ig_http_server_response_bytes_sum{code,local,method}

Summary

Size of responses in bytes

ig_http_server_response_time_seconds_count{code,local,method}

Summary

Request processing time

ig_http_server_response_time_seconds_sum{code,local,method}

Summary

Request processing time

ig_http_server_response_time_seconds{code,local,method,quantile}

Summary

Request processing time

ig_jvm_available_cpus

Gauge

Number of processors available to the Java virtual machine

ig_jvm_class_loading_loaded_total

Counter

Number of classes loaded since the Java virtual machine started

ig_jvm_class_loading_unloaded_total

Counter

Number of classes unloaded since the Java virtual machine started

ig_jvm_free_used_memory_bytes

Gauge

Bytes of free memory allocated to the Java virtual machine

ig_jvm_garbage_collector_count_total{name}

Counter

Total number of garbage collections since startup

ig_jvm_garbage_collector_time_total{name}

Counter

Approximate accumulated garbage collection elapsed time in milliseconds

ig_jvm_max_memory_bytes

Gauge

Maximum amount of memory that the Java virtual machine will attempt to use

ig_jvm_memory_usage_committed{location}

Gauge

Amount of memory guaranteed to be available to the Java virtual machine

ig_jvm_memory_usage_init{location}

Gauge

Amount of memory the Java virtual machine requested during startup

ig_jvm_memory_usage_max{location}

Gauge

Maximum amount of memory the Java virtual machine can use for memory management

ig_jvm_memory_usage_pools_committed{name}

Gauge

Amount of memory guaranteed to be available to this memory pool

ig_jvm_memory_usage_pools_init{name}

Gauge

Amount of memory the memory pool requested during startup

ig_jvm_memory_usage_pools_max{name}

Gauge

Maximum amount of memory the memory pool can use for memory management

ig_jvm_memory_usage_pools_used_after_gc{name}

Gauge

Amount of memory the memory pool uses after the most recent garbage collection

ig_jvm_memory_usage_pools_used{name}

Gauge

Amount of memory the memory pool currently uses

ig_jvm_memory_usage_used{location}

Gauge

Maximum amount of memory the Java virtual machine currently uses

ig_jvm_thread_state_count{state}

Gauge

Number of threads in the specified state

ig_jvm_thread_state_daemon_count

Gauge

Number of live daemon threads

ig_jvm_used_memory_bytes

Gauge

Amount of memory used by the Java virtual machine

ig_pool_completed_total{pool_name,pool_type}

Counter

Number of elements done with the resource

ig_pool_completed{pool_name,pool_type}

Counter

[Deprecated] Number of elements done with the resource

ig_pool_in_use{pool_name,pool_type}

Gauge

Number of resources used

ig_pool_max_size{pool_name,pool_type}

Gauge

Number of resources used

ig_pool_queue_pending{pool_name,pool_type}

Gauge

Number of pending elements in queue

ig_pool_queue_time_seconds_count{pool_name,pool_type}

Summary

Time spent in queue before being processed

ig_pool_queue_time_seconds_sum{pool_name,pool_type}

Summary

Time spent in queue before being processed

ig_pool_queue_time_seconds{pool_name,pool_type,quantile}

Summary

Time spent in queue before being processed

ig_pool_ratio{pool_name,pool_type}

Gauge

Pool usage ratio, only meaningful if maximum pool size could be determined

ig_pool_usage_seconds_count{pool_name,pool_type}

Summary

Time using a resource

ig_pool_usage_seconds_sum{pool_name,pool_type}

Summary

Time using a resource

ig_pool_usage_seconds{pool_name,pool_type,quantile}

Summary

Time using a resource

ig_reverseproxyhandler_ws_proxy_application_side_read_total{frame_type,fully_qualified_name,heap,name,route,router}

Counter

Number of application-side proxy frames received1

ig_reverseproxyhandler_ws_proxy_application_side_read_total{frame_type,fully_qualified_name,heap,name}

Counter

Number of application-side proxy frames received1

ig_reverseproxyhandler_ws_proxy_application_side_write_total{frame_type,fully_qualified_name,heap,name,route,router}

Counter

Number of application-side proxy frames sent1

ig_reverseproxyhandler_ws_proxy_application_side_write_total{frame_type,fully_qualified_name,heap,name}

Counter

Number of application-side proxy frames sent1

ig_reverseproxyhandler_ws_proxy_client_side_read_total{frame_type,fully_qualified_name,heap,name,route,router}

Counter

Number of client-side proxy frames received1

ig_reverseproxyhandler_ws_proxy_client_side_read_total{frame_type,fully_qualified_name,heap,name}

Counter

Number of client-side proxy frames received1

ig_reverseproxyhandler_ws_proxy_client_side_write_total{frame_type,fully_qualified_name,heap,name,route,router}

Counter

Number of client-side proxy frames sent1

ig_reverseproxyhandler_ws_proxy_client_side_write_total{frame_type,fully_qualified_name,heap,name}

Counter

Number of client-side proxy frames sent1

ig_reverseproxyhandler_ws_proxy_tunnels_active{fully_qualified_name,heap,name,route,router}

Gauge

Number of active websocket proxy tunnels1

ig_reverseproxyhandler_ws_proxy_tunnels_active{fully_qualified_name,heap,name}

Gauge

Number of active websocket proxy tunnels1

ig_reverseproxyhandler_ws_proxy_tunnels_created_total{fully_qualified_name,heap,name,route,router}

Counter

Number of websocket proxy tunnels created1

ig_reverseproxyhandler_ws_proxy_tunnels_created_total{fully_qualified_name,heap,name}

Counter

Number of websocket proxy tunnels created1

ig_route_request_active{name,route,router}

Gauge

Number of requests being processed

ig_route_request_total{name,route,router}

Counter

Number of requests processed by the router or route since it was deployed

ig_route_response_error_total{name,route,router}

Counter

Number of responses that threw an exception

ig_route_response_null_total{name,route,router}

Counter

Number of responses that were not handled by PingGateway

ig_route_response_status_total{family,name,route,router}

Counter

Number of responses by HTTP status code family. The "family" label depends on the HTTP status code

ig_route_response_time_seconds_count{name,route,router}

Summary

Response time observations

ig_route_response_time_seconds_sum{name,route,router}

Summary

Response time observations

ig_route_response_time_seconds{name,route,router,quantile}

Summary

Response time observations

ig_router_deployed_routes{fully_qualified_name,heap,name}

Gauge

Number of routes deployed in the configuration

ig_startup_seconds_count{class,id,kind,level,parentId,parentKind}

Summary

Top-level startup metrics

ig_startup_seconds_count{id,kind,level,parentId,parentKind}

Summary

Top-level startup metrics

ig_startup_seconds_sum{class,id,kind,level,parentId,parentKind}

Summary

Top-level startup metrics

ig_startup_seconds_sum{id,kind,level,parentId,parentKind}

Summary

Top-level startup metrics

ig_startup_seconds{class,id,kind,level,parentId,parentKind,quantile}

Summary

Top-level startup metrics

ig_startup_seconds{id,kind,level,parentId,parentKind,quantile}

Summary

Top-level startup metrics

ig_timerdecorator_filter_downstream_seconds_count{decorated_object,heap,name}

Summary

Time to process the request and response in filters and handlers downstream of the decorated filter

ig_timerdecorator_filter_downstream_seconds_sum{decorated_object,heap,name}

Summary

Time to process the request and response in filters and handlers downstream of the decorated filter

ig_timerdecorator_filter_downstream_seconds{decorated_object,heap,name,quantile}

Summary

Time to process the request and response in filters and handlers downstream of the decorated filter

ig_timerdecorator_filter_elapsed_seconds_count{decorated_object,heap,name}

Summary

Time to process the request and response in the decorated filter and its downstream filters and handler

ig_timerdecorator_filter_elapsed_seconds_sum{decorated_object,heap,name}

Summary

Time to process the request and response in the decorated filter and its downstream filters and handler

ig_timerdecorator_filter_elapsed_seconds{decorated_object,heap,name,quantile}

Summary

Time to process the request and response in the decorated filter and its downstream filters and handler

ig_timerdecorator_filter_internal_seconds_count{decorated_object,heap,name}

Summary

Time to process the request and response in the decorated filter

ig_timerdecorator_filter_internal_seconds_sum{decorated_object,heap,name}

Summary

Time to process the request and response in the decorated filter

ig_timerdecorator_filter_internal_seconds{decorated_object,heap,name,quantile}

Summary

Time to process the request and response in the decorated filter

ig_timerdecorator_handler_elapsed_seconds_count{decorated_object,heap,name}

Summary

Time to process the request and response in the decorated handler

ig_timerdecorator_handler_elapsed_seconds_sum{decorated_object,heap,name}

Summary

Time to process the request and response in the decorated handler

ig_timerdecorator_handler_elapsed_seconds{decorated_object,heap,name,quantile}

Summary

Time to process the request and response in the decorated handler

1 The "reverseproxyhandler" in the metric name reflects the name of the ReverseProxyHandler component in the PingGateway configuration.