Differences between MicroProfile 2.2 and 2.1

If you are updating your application from using MicroProfile 2.1 features to using MicroProfile 2.2 features, changes in API behavior might require you to update your application code.

Differences between MicroProfile Metrics 2.0 and 1.1

The following table lists the MicroProfile Metrics 2.0 metric names and the corresponding MicroProfile Metrics 1.1 metric names. It also lists the corresponding Prometheus names and metric types for each MicroProfile Metrics version.

Mapping metrics from MicroProfile Metrics 1.1 to MicroProfile Metrics 2.0
mpMetrics-1.1 namempMetrics-1.1 Prometheus name(s)mpMetrics-1.1 typempMetrics-2.x namempMetrics-2.x Prometheus name(s)mpMetrics-2.x type

classloader.currentLoadedClasses.count

base:classloader_current_loaded_class_count

Counter

classloader.loadedClasses.count

base_classloader_loadedClasses_count

Gauge

classloader.totalLoadedClasses.count

base:classloader_total_loaded_class_count

Counter

classloader.loadedClasses.total

base_classloader_loadedClasses_total

Counter

classloader.totalUnloadedClasses.count

base:classloader_total_unloaded_class_count

Counter

classloader.unloadedClasses.total

base_classloader_unloadedClasses_total

Counter

connectionpool.<datasourceName>.connectionHandles

vendor:connectionpool_<dataSourceName>_connection_handles

Gauge

connectionpool.connectionHandles{datasource=<datasourceName>}

vendor_connectionpool_connectionHandles{datasource=<dataSourceName>}

Gauge

connectionpool.<datasourceName>.create.total

vendor:connectionpool_<dataSourceName>_create_total

Counter

connectionpool.create.total{datasource=<datasourceName>}

vendor_connectionpool_create_total{datasource=<dataSourceName>}

Counter

connectionpool.<datasourceName>.destroy.total

vendor:connectionpool_<dataSourceName>_destroy_total

Counter

connectionpool.destroy.total{datasource=<datasourceName>}

vendor_connectionpool_destroy_total{datasource=<dataSourceName>}

Counter

connectionpool.<datasourceName>.freeConnections

vendor:connectionpool_<dataSourceName>_free_connections

Gauge

connectionpool.freeConnections{datasource=<datasourceName>}

vendor_connectionpool_freeConnections{datasource=<dataSourceName>}

Gauge

connectionPool.<datasourceName>.inUseTime.total

vendor:connectionpool_<dataSourceName>_in_use_time_total_seconds

Gauge

connectionPool.inUseTime.total{datasource=<datasourceName>}

vendor_connectionpool_inUseTime_total_seconds{datasource=<dataSourceName>}

Gauge

connectionpool.<datasourceName>.managedConnections

vendor:connectionpool_<dataSourceName>_managed_connections

Gauge

connectionpool.managedConnections{datasource=<datasourceName>}

vendor_connectionpool_managedConnections{datasource=<dataSourceName>}

Gauge

connectionpool.<datasourceName>.queuedRequests.total

vendor:connectionpool_<dataSourceName>_queued_requests_total

Counter

connectionpool.queuedRequests.total{datasource=<datasourceName>}

vendor_connectionpool_queuedRequests_total{datasource=<dataSourceName>}

Counter

connectionPool.<datasourceName>.usedConnections.total

vendor:connectionpool_<dataSourceName>_used_connections_total

Counter

connectionPool.usedConnections.total{datasource=<datasourceName>}

vendor_connectionpool_usedConnections_total{datasource=<dataSourceName>}

Counter

connectionpool.<datasourceName>.waitTime.total

vendor:connectionpool_<dataSourceName>_wait_time_total_seconds

Gauge

connectionpool.waitTime.total{datasource=<datasourceName>}

vendor_connectionpool_waitTime_total_seconds{datasource=<dataSourceName>}

Gauge

cpu.availableProcessors

base:cpu_available_processors

Gauge

cpu.availableProcessors

base_cpu_availableProcessors

Gauge

cpu.processCpuLoad

base:cpu_process_cpu_load_percent

Gauge

cpu.processCpuLoad

base_cpu_processCpuLoad_percent

Gauge

cpu.systemLoadAverage

base:cpu_system_load_average

Gauge

cpu.systemLoadAverage

base_cpu_systemLoadAverage

Gauge

ft.<name>.bulkhead.callsAccepted.total

application:ft_<name>_bulkhead_calls_accepted_total

Counter

ft.<name>.bulkhead.callsAccepted.total

application_ft_<name>_bulkhead_callsAccepted_total

Counter

ft.<name>.bulkhead.callsRejected.total

application:ft_<name>_bulkhead_calls_rejected_total

Counter

ft.<name>.bulkhead.callsRejected.total

application_ft_<name>_bulkhead_callsRejected_total

Counter

ft.<name>.bulkhead.concurrentExecutions

application:ft_<name>_bulkhead_concurrent_executions

Gauge<long>

ft.<name>.bulkhead.concurrentExecutions

application_ft_<name>_bulkhead_concurrentExecutions

Gauge<long>

ft.<name>.bulkhead.executionDuration

application:ft_<name>_bulkhead_execution_duration_mean_seconds application:ft_<name>_bulkhead_execution_duration_max_seconds application:ft_<name>_bulkhead_execution_duration_min_seconds application:ft_<name>_bulkhead_execution_duration_stddev_seconds application:ft_<name>_bulkhead_execution_duration_seconds_count application:ft_<name>_bulkhead_execution_duration_seconds{quantile="0.5"} application:ft_<name>_bulkhead_execution_duration_seconds{quantile="0.75"} application:ft_<name>_bulkhead_execution_duration_seconds{quantile="0.95"} application:ft_<name>_bulkhead_execution_duration_seconds{quantile="0.98"} application:ft_<name>_bulkhead_execution_duration_seconds{quantile="0.99"} application:ft_<name>_bulkhead_execution_duration_seconds{quantile="0.999"}

Histogram

ft.<name>.bulkhead.executionDuration

application_ft_<name>_bulkhead_executionDuration_mean_seconds / (seconds) application_ft_<name>_bulkhead_executionDuration_max_seconds application_ft_<name>_bulkhead_executionDuration_min_seconds application_ft_<name>_bulkhead_executionDuration_stddev_seconds application_ft_<name>_bulkhead_executionDuration_seconds_count application_ft_<name>_bulkhead_executionDuration_seconds{quantile="0.5"} application_ft_<name>_bulkhead_executionDuration_seconds{quantile="0.75"} application_ft_<name>_bulkhead_executionDuration_seconds{quantile="0.95"} application_ft_<name>_bulkhead_executionDuration_seconds{quantile="0.98"} application_ft_<name>_bulkhead_executionDuration_seconds{quantile="0.99"} application_ft_<name>_bulkhead_executionDuration_seconds{quantile="0.999"}

Histogram

ft.<name>.bulkhead.waiting.duration

application:ft_<name>_bulkhead_waiting_duration_mean_seconds application:ft_<name>_bulkhead_waiting_duration_max_seconds application:ft_<name>_bulkhead_waiting_duration_min_seconds application:ft_<name>_bulkhead_waiting_duration_stddev_seconds application:ft_<name>_bulkhead_waiting_duration_seconds_count application:ft_<name>_bulkhead_waiting_duration_seconds{quantile="0.5"} application:ft_<name>_bulkhead_waiting_duration_seconds{quantile="0.75"} application:ft_<name>_bulkhead_waiting_duration_seconds{quantile="0.95"} application:ft_<name>_bulkhead_waiting_duration_seconds{quantile="0.98"} application:ft_<name>_bulkhead_waiting_duration_seconds{quantile="0.99"} application:ft_<name>_bulkhead_waiting_duration_seconds{quantile="0.999"}

Histogram

ft.<name>.bulkhead.waiting.duration

application_ft_<name>_bulkhead_waitingDuration_mean_seconds / (seconds) application_ft_<name>_bulkhead_waitingDuration_max_seconds application_ft_<name>_bulkhead_waitingDuration_min_seconds application_ft_<name>_bulkhead_waitingDuration_stddev_seconds application_ft_<name>_bulkhead_waitingDuration_seconds_count application_ft_<name>_bulkhead_waitingDuration_seconds{quantile="0.5"} application_ft_<name>_bulkhead_waitingDuration_seconds{quantile="0.75"} application_ft_<name>_bulkhead_waitingDuration_seconds{quantile="0.95"} application_ft_<name>_bulkhead_waitingDuration_seconds{quantile="0.98"} application_ft_<name>_bulkhead_waitingDuration_seconds{quantile="0.99"} application_ft_<name>_bulkhead_waitingDuration_seconds{quantile="0.999"}

Histogram

ft.<name>.bulkhead.waitingQueue.population

application:ft_<name>_bulkhead_waiting_queue_population

Gauge<long>

ft.<name>.bulkhead.waitingQueue.population

application_ft_<name>_bulkhead_waitingQueue_population

Gauge<long>

ft.<name>.circuitbreaker.callsFailed.total

application:ft_<name>_circuitbreaker_calls_failed_total

Counter

ft.<name>.circuitbreaker.callsFailed.total

application_ft_<name>_circuitbreaker_callsFailed_total

Counter

ft.<name>.circuitbreaker.callsPrevented.total

application:ft_<name>_circuitbreaker_calls_prevented_total

Counter

ft.<name>.circuitbreaker.callsPrevented.total

application_ft_<name>_circuitbreaker_callsPrevented_total

Counter

ft.<name>.circuitbreaker.callsSucceeded.total

application:ft_<name>_circuitbreaker_calls_succeeded_total

Counter

ft.<name>.circuitbreaker.callsSucceeded.total

application_ft_<name>_circuitbreaker_callsSucceeded_total

Counter

ft.<name>.circuitbreaker.closed.total

application:ft_<name>_circuitbreaker_closed_total

Gauge<long>

ft.<name>.circuitbreaker.closed.total

application_ft_<name>_circuitbreaker_closed_total

Gauge<long>

ft.<name>.circuitbreaker.halfOpen.total

application:ft_<name>_circuitbreaker_half_open_total

Gauge<long>

ft.<name>.circuitbreaker.halfOpen.total

application_ft_<name>_circuitbreaker_halfOpen_total

Gauge<long>

ft.<name>.circuitbreaker.open.total

application:ft_<name>_circuitbreaker_open_total

Gauge<long>

ft.<name>.circuitbreaker.open.total

application_ft_<name>_circuitbreaker_open_total

Gauge<long>

ft.<name>.circuitbreaker.opened.total

application:ft_<name>_circuitbreaker_opened_total

Counter

ft.<name>.circuitbreaker.opened.total

application_ft_<name>_circuitbreaker_opened_total

Counter

ft.<name>.fallback.calls.total

application:ft_<name>_fallback_calls_total

Counter

ft.<name>.fallback.calls.total

application_ft_<name>_fallback_calls_total

Counter

ft.<name>.invocations.failed.total

application:ft_<name>_invocations_failed_total

Counter

ft.<name>.invocations.failed.total

application_ft_<name>_invocations_failed_total

Counter

ft.<name>.invocations.total

application:ft_<name>_invocations_total

Counter

ft.<name>.invocations.total

application_ft_<name>_invocations_total

Counter

ft.<name>.retry.callsFailed.total

application:ft_<name>_retry_calls_failed_total

Counter

ft.<name>.retry.callsFailed.total

application_ft_<name>_retry_callsFailed_total

Counter

ft.<name>.retry.callsSucceededNotRetried.total

application:ft_<name>_retry_calls_succeeded_not_retried_total

Counter

ft.<name>.retry.callsSucceededNotRetried.total

application_ft_<name>_retry_callsSucceededNotRetried_total

Counter

ft.<name>.retry.callsSucceededRetried.total

application:ft_<name>_retry_calls_succeeded_retried_total

Counter

ft.<name>.retry.callsSucceededRetried.total

application_ft_<name>_retry_callsSucceededRetried_total

Counter

ft.<name>.retry.retries.total

application:ft_<name>_retry_retries_total

Counter

ft.<name>.retry.retries.total

application_ft_<name>_retry_retries_total

Counter

ft.<name>.timeout.callsNotTimedOut.total

application:ft_<name>_timeout_calls_not_timed_out_total

Counter

ft.<name>.timeout.callsNotTimedOut.total

application_ft_<name>_timeout_callsNotTimedOut_total

Counter

ft.<name>.timeout.callsTimedOut.total

application:ft_<name>_timeout_calls_timed_out_total

Counter

ft.<name>.timeout.callsTimedOut.total

application_ft_<name>_timeout_callsTimedOut_total

Counter

ft.<name>.timeout.executionDuration

application:ft_<name>_timeout_execution_duration_mean_seconds application:ft_<name>_timeout_execution_duration_max_seconds application:ft_<name>_timeout_execution_duration_min_seconds application:ft_<name>_timeout_execution_duration_stddev_seconds application:ft_<name>_timeout_execution_duration_seconds_count application:ft_<name>_timeout_execution_duration_seconds{quantile="0.5"} application:ft_<name>_timeout_execution_duration_seconds{quantile="0.75"} application:ft_<name>_timeout_execution_duration_seconds{quantile="0.95"} application:ft_<name>_timeout_execution_duration_seconds{quantile="0.98"} application:ft_<name>_timeout_execution_duration_seconds{quantile="0.99"} application:ft_<name>_timeout_execution_duration_seconds{quantile="0.999"}

Histogram

ft.<name>.timeout.executionDuration

application_ft_<name>_timeout_executionDuration_mean_seconds / (seconds) application_ft_<name>_timeout_executionDuration_max_seconds application_ft_<name>_timeout_executionDuration_min_seconds application_ft_<name>_timeout_executionDuration_stddev_seconds application_ft_<name>_timeout_executionDuration_seconds_count application_ft_<name>_timeout_executionDuration_seconds{quantile="0.5"} application_ft_<name>_timeout_executionDuration_seconds{quantile="0.75"} application_ft_<name>_timeout_executionDuration_seconds{quantile="0.95"} application_ft_<name>_timeout_executionDuration_seconds{quantile="0.98"} application_ft_<name>_timeout_executionDuration_seconds{quantile="0.99"} application_ft_<name>_timeout_executionDuration_seconds{quantile="0.999"}

Histogram

gc.<gcType>.time

base:gc_<gcType>_time_seconds

Gauge

gc.time{name=<gcName>}

base_gc_time_seconds{name="<gcType>"} / (seconds)

Gauge

gc.<gcType>.count

base:gc_<gcType>_count

Counter

gc.total{name=<gcName>}

base_gc_total{name="<gcType>"}

Counter

jaxws.client.<endpointName>.checkedApplicationFaults.total

vendor:jaxws_client_<endpointName>_checked_application_faults_total

Counter

jaxws.client.checkedApplicationFaults.total{endpoint=<endpointName>}

vendor_jaxws_client_checkedApplicationFaults_total{endpoint=<endpointName>}

Counter

jaxws.client.<endpointName>.invocations.total

vendor:jaxws_client_<endpointName>_invocations_total

Counter

jaxws.client.invocations.total{endpoint=<endpointName>}

vendor_jaxws_client_invocations_total{endpoint=<endpointName>}

Counter

jaxws.client.<endpointName>.logicalRuntimeFaults.total

vendor:jaxws_client_<endpointName>_logical_runtime_faults_total

Counter

jaxws.client.logicalRuntimeFaults.total{endpoint=<endpointName>}

vendor_jaxws_client_logicalRuntimeFaults_total{endpoint=<endpointName>}

Counter

jaxws.client.<endpointName>.responseTime.total

vendor:jaxws_client_<endpointName>_response_time_total_seconds

Gauge

jaxws.client.responseTime.total{endpoint=<endpointName>}

vendor_jaxws_client_responseTime_total_seconds{endpoint=<endpointName>}

Gauge

jaxws.client.<endpointName>.runtimeFaults.total

vendor:jaxws_client_<endpointName>_runtime_faults_total

Counter

jaxws.client.runtimeFaults.total{endpoint=<endpointName>}

vendor_jaxws_client_runtimeFaults_total{endpoint=<endpointName>}

Counter

jaxws.client.<endpointName>.uncheckedApplicationFaults.total

vendor:jaxws_client_<endpointName>_unchecked_application_faults_total

Counter

jaxws.client.uncheckedApplicationFaults.total{endpoint=<endpointName>}

vendor_jaxws_client_uncheckedApplicationFaults_total{endpoint=<endpointName>}

Counter

jaxws.server.<endpointName>.checkedApplicationFaults.total

vendor:jaxws_server_<endpointName>_checked_application_faults_total

Counter

jaxws.server.checkedApplicationFaults.total{endpoint=<endpointName>}

vendor_jaxws_server_checkedApplicationFaults_total{endpoint=<endpointName>}

Counter

jaxws.server.<endpointName>.invocations.total

vendor:jaxws_server_<endpointName>_invocations_total

Counter

jaxws.server.invocations.total{endpoint=<endpointName>}

vendor_jaxws_server_invocations_total{endpoint=<endpointName>}

Counter

jaxws.server.<endpointName>.logicalRuntimeFaults.total

vendor:jaxws_server_<endpointName>_logical_runtime_faults_total

Counter

jaxws.server.logicalRuntimeFaults.total{endpoint=<endpointName>}

vendor_jaxws_server_logicalRuntimeFaults_total{endpoint=<endpointName>}

Counter

jaxws.server.<endpointName>.responseTime.total

vendor:jaxws_server_<endpointName>_response_time_total_seconds

Gauge

jaxws.server.responseTime.total{endpoint=<endpointName>}

vendor_jaxws_server_responseTime_total_seconds{endpoint=<endpointName>}

Gauge

jaxws.server.<endpointName>.runtimeFaults.total

vendor:jaxws_server_<endpointName>_runtime_faults_total

Counter

jaxws.server.runtimeFaults.total{endpoint=<endpointName>}

vendor_jaxws_server_runtimeFaults_total{endpoint=<endpointName>}

Counter

jaxws.server.<endpointName>.uncheckedApplicationFaults.total

vendor:jaxws_server_<endpointName>_unchecked_application_faults_total

Counter

jaxws.server.uncheckedApplicationFaults.total{endpoint=<endpointName>}

vendor_jaxws_server_uncheckedApplicationFaults_total{endpoint=<endpointName>}

Counter

jvm.uptime

base:jvm_uptime_seconds

Gauge

jvm.uptime

base_jvm_uptime_seconds

Gauge

memory.committedHeap

base:memory_committed_heap_bytes

Gauge

memory.committedHeap

base_memory_committedHeap_bytes

Gauge

memory.maxHeap

base:memory_max_heap_bytes

Gauge

memory.maxHeap

base_memory_maxHeap_bytes

Gauge

memory.usedHeap

base:memory_used_heap_bytes

Gauge

memory.usedHeap

base_memory_usedHeap_bytes

Gauge

servlet.<servletName>.request.total

vendor:servlet_<servletname>_request_total

Counter

servlet.request.total{servlet=<servletName>}

vendor_servlet_request_total{servlet=<servletname>}

Counter

servlet.<servletName>.responseTime.total

vendor:servlet_<servletname>_response_time_total_seconds

Gauge

servlet.responseTime.total{servlet=<servletName>}

vendor_servlet_responseTime_total_seconds / (seconds)

Gauge

session.<appName>.activeSessions

vendor:session_<appName>_active_sessions

Gauge

session.activeSessions{appname=<appName>}

vendor_session_activeSessions{appname=<appName>}

Gauge

session.<appName>.create.total

vendor:session_<appName>_create_total

Gauge

session.create.total{appname=<appName>}

vendor_session_create_total{appname=<appName>}

Gauge

session.<appName>.invalidated.total

vendor:session_<appName>_invalidated_total

Counter

session.invalidated.total{appname=<appName>}

vendor_session_invalidated_total{appname=<appName>}

Counter

session.<appName>.invalidatedbyTimeout.total

vendor:session_<appName>_invalidatedby_timeout_total

Counter

session.invalidatedbyTimeout.total{appname=<appName>}

vendor_session_invalidatedbyTimeout_total{appname=<appName>}

Counter

session.<appName>.liveSessions

vendor:session_<appName>_live_sessions

Gauge

session.liveSessions{appname=<appName>}

vendor_session_liveSessions{appname=<appName>}

Gauge

thread.count

base:thread_count

Counter

thread.count

base_thread_count

Gauge

thread.daemon.count

base:thread_daemon_count

Counter

thread.daemon.count

base_thread_daemon_count

Gauge

thread.max.count

base:thread_max_count

Counter

thread.max.count

base_thread_max_count

Gauge

threadPool.<poolName>.activeThreads

vendor:threadpool_<poolName>_active_threads

Gauge

threadpool.activeThreads{pool=<poolName>}

vendor_threadpool_activeThreads{pool="<poolName>"}

Gauge

threadPool.<poolName>.size

vendor:threadpool_<poolName>_size

Gauge

threadpool.size{pool=<poolName>}

vendor_threadpool_size{pool="<poolName>"}

Gauge