Observability

1. Observability metadata

1.1. Observability - Metrics

Below you can find a list of all metrics declared by this project.

1.1.1. Active Connections

The number of the connections in the connection pool that have been successfully acquired and are in active use.

Metric name reactor.netty.connection.provider.active.connections. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.http.client.Http2ConnectionProviderMeters.

Table 1. Low cardinality Keys

Name

Description

id (required)

ID.

name (required)

NAME.

remote.address (required)

Remote address.

1.1.2. Active Connections

The number of the connections in the connection pool that have been successfully acquired and are in active use.

Metric name reactor.netty.connection.provider.active.connections. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.resources.ConnectionProviderMeters.

Table 2. Low cardinality Keys

Name

Description

id (required)

ID.

name (required)

NAME.

remote.address (required)

Remote address.

1.1.3. Active Direct Memory

The actual bytes consumed by in-use buffers allocated from direct buffer pools.

Metric name reactor.netty.bytebuf.allocator.active.direct.memory. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.transport.ByteBufAllocatorMeters.

Table 3. Low cardinality Keys

Name

Description

id (required)

ID.

type (required)

TYPE.

1.1.4. Active Heap Memory

The actual bytes consumed by in-use buffers allocated from heap buffer pools.

Metric name reactor.netty.bytebuf.allocator.active.heap.memory. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.transport.ByteBufAllocatorMeters.

Table 4. Low cardinality Keys

Name

Description

id (required)

ID.

type (required)

TYPE.

1.1.5. Active Streams

The number of the active HTTP/2 streams.

Metric name reactor.netty.connection.provider.active.streams. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.http.client.Http2ConnectionProviderMeters.

Table 5. Low cardinality Keys

Name

Description

id (required)

ID.

name (required)

NAME.

remote.address (required)

Remote address.

1.1.6. Chunk Size

The chunk size for an arena.

Metric name reactor.netty.bytebuf.allocator.chunk.size. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.transport.ByteBufAllocatorMeters.

Table 6. Low cardinality Keys

Name

Description

id (required)

ID.

type (required)

TYPE.

1.1.7. Connections Active

The number of http connections, on the server, currently processing requests.

Metric name reactor.netty.http.server.connections.active. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.http.server.HttpServerMeters.

Table 7. Low cardinality Keys

Name

Description

local.address (required)

Local address.

uri (required)

URI.

1.1.8. Connections Total

The number of all opened connections on the server.

Metric name %s - since it contains %s, the name is dynamic and will be resolved at runtime. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.channel.ChannelMeters.

Table 8. Low cardinality Keys

Name

Description

local.address (required)

Local address.

uri (required)

URI.

1.1.9. Connect Time

Connect metric.

Metric name %s - since it contains %s, the name is dynamic and will be resolved at runtime. Type timer.

Metric name %s.active - since it contains %s, the name is dynamic and will be resolved at runtime. Type long task timer.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.
Micrometer internally uses nanoseconds for the baseunit. However, each backend determines the actual baseunit. (i.e. Prometheus uses seconds)

Fully qualified name of the enclosing class reactor.netty.channel.ConnectObservations.

Table 9. Low cardinality Keys

Name

Description

proxy.address (required)

Proxy address, when there is a proxy configured.

remote.address (required)

Remote address.

status (required)

STATUS.

Table 10. High cardinality Keys

Name

Description

net.peer.name (required)

Net peer name.

net.peer.port (required)

Net peer port.

reactor.netty.protocol (required)

Reactor Netty protocol (tcp/http etc.).

reactor.netty.status (required)

Reactor Netty status.

reactor.netty.type (required)

Reactor Netty type (always client).

1.1.10. Data Received

Amount of the data received, in bytes.

Metric name %s - since it contains %s, the name is dynamic and will be resolved at runtime. Type distribution summary and base unit bytes.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.channel.ChannelMeters.

Table 11. Low cardinality Keys

Name

Description

proxy.address (required)

Proxy address, when there is a proxy configured.

remote.address (required)

Remote address.

uri (required)

URI.

1.1.11. Data Sent

Amount of the data sent, in bytes.

Metric name %s - since it contains %s, the name is dynamic and will be resolved at runtime. Type distribution summary and base unit bytes.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.channel.ChannelMeters.

Table 12. Low cardinality Keys

Name

Description

proxy.address (required)

Proxy address, when there is a proxy configured.

remote.address (required)

Remote address.

uri (required)

URI.

1.1.12. Direct Arenas

The number of direct arenas.

Metric name reactor.netty.bytebuf.allocator.direct.arenas. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.transport.ByteBufAllocatorMeters.

Table 13. Low cardinality Keys

Name

Description

id (required)

ID.

type (required)

TYPE.

1.1.13. Errors Count

Number of errors that occurred.

Metric name %s - since it contains %s, the name is dynamic and will be resolved at runtime. Type counter.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.channel.ChannelMeters.

Table 14. Low cardinality Keys

Name

Description

proxy.address (required)

Proxy address, when there is a proxy configured.

remote.address (required)

Remote address.

uri (required)

URI.

1.1.14. Heap Arenas

The number of heap arenas.

Metric name reactor.netty.bytebuf.allocator.heap.arenas. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.transport.ByteBufAllocatorMeters.

Table 15. Low cardinality Keys

Name

Description

id (required)

ID.

type (required)

TYPE.

1.1.15. Hostname Resolution Time

Hostname resolution metric.

Metric name %s - since it contains %s, the name is dynamic and will be resolved at runtime. Type timer.

Metric name %s.active - since it contains %s, the name is dynamic and will be resolved at runtime. Type long task timer.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.
Micrometer internally uses nanoseconds for the baseunit. However, each backend determines the actual baseunit. (i.e. Prometheus uses seconds)

Fully qualified name of the enclosing class reactor.netty.transport.HostnameResolutionObservations.

Table 16. Low cardinality Keys

Name

Description

remote.address (required)

Remote address.

status (required)

STATUS.

Table 17. High cardinality Keys

Name

Description

net.peer.name (required)

Net peer name.

net.peer.port (required)

Net peer port.

reactor.netty.protocol (required)

Reactor Netty protocol (tcp/http etc.).

reactor.netty.status (required)

Reactor Netty status.

reactor.netty.type (required)

Reactor Netty type (always client).

1.1.16. Http Client Data Received Time

Time spent in consuming incoming data on the client.

Metric name reactor.netty.http.client.data.received.time. Type timer.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.
Micrometer internally uses nanoseconds for the baseunit. However, each backend determines the actual baseunit. (i.e. Prometheus uses seconds)

Fully qualified name of the enclosing class reactor.netty.http.client.HttpClientMeters.

Table 18. Low cardinality Keys

Name

Description

method (required)

METHOD.

proxy.address (required)

Proxy address, when there is a proxy configured.

remote.address (required)

Remote address.

status (required)

STATUS.

uri (required)

URI.

1.1.17. Http Client Data Sent Time

Time spent in sending outgoing data from the client.

Metric name reactor.netty.http.client.data.sent.time. Type timer.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.
Micrometer internally uses nanoseconds for the baseunit. However, each backend determines the actual baseunit. (i.e. Prometheus uses seconds)

Fully qualified name of the enclosing class reactor.netty.http.client.HttpClientMeters.

Table 19. Low cardinality Keys

Name

Description

method (required)

METHOD.

proxy.address (required)

Proxy address, when there is a proxy configured.

remote.address (required)

Remote address.

uri (required)

URI.

1.1.18. Http Client Response Time

Response metric.

Metric name reactor.netty.http.client.response.time. Type timer.

Metric name reactor.netty.http.client.response.time.active. Type long task timer.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.
Micrometer internally uses nanoseconds for the baseunit. However, each backend determines the actual baseunit. (i.e. Prometheus uses seconds)

Fully qualified name of the enclosing class reactor.netty.http.client.HttpClientObservations.

Table 20. Low cardinality Keys

Name

Description

method (required)

METHOD.

proxy.address (required)

Proxy address, when there is a proxy configured.

remote.address (required)

Remote address.

status (required)

STATUS.

uri (required)

URI.

Table 21. High cardinality Keys

Name

Description

http.status_code (required)

Status code.

http.url (required)

URL.

net.peer.name (required)

Net peer name.

net.peer.port (required)

Net peer port.

reactor.netty.type (required)

Reactor Netty type (always client).

1.1.19. Http Server Data Received

Amount of the data received, in bytes.

Metric name %s - since it contains %s, the name is dynamic and will be resolved at runtime. Type distribution summary and base unit bytes.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.http.server.HttpServerMeters.

Table 22. Low cardinality Keys

Name

Description

uri (required)

URI.

1.1.20. Http Server Data Received Time

Time spent in consuming incoming data on the server.

Metric name reactor.netty.http.server.data.received.time. Type timer.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.
Micrometer internally uses nanoseconds for the baseunit. However, each backend determines the actual baseunit. (i.e. Prometheus uses seconds)

Fully qualified name of the enclosing class reactor.netty.http.server.HttpServerMeters.

Table 23. Low cardinality Keys

Name

Description

method (required)

METHOD.

uri (required)

URI.

1.1.21. Http Server Data Sent

Amount of the data sent, in bytes.

Metric name %s - since it contains %s, the name is dynamic and will be resolved at runtime. Type distribution summary and base unit bytes.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.http.server.HttpServerMeters.

Table 24. Low cardinality Keys

Name

Description

uri (required)

URI.

1.1.22. Http Server Data Sent Time

Time spent in sending outgoing data from the server.

Metric name reactor.netty.http.server.data.sent.time. Type timer.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.
Micrometer internally uses nanoseconds for the baseunit. However, each backend determines the actual baseunit. (i.e. Prometheus uses seconds)

Fully qualified name of the enclosing class reactor.netty.http.server.HttpServerMeters.

Table 25. Low cardinality Keys

Name

Description

method (required)

METHOD.

status (required)

STATUS.

uri (required)

URI.

1.1.23. Http Server Errors Count

Number of errors that occurred.

Metric name %s - since it contains %s, the name is dynamic and will be resolved at runtime. Type counter.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.http.server.HttpServerMeters.

Table 26. Low cardinality Keys

Name

Description

uri (required)

URI.

1.1.24. Http Server Response Time

Response metric.

Metric name reactor.netty.http.server.response.time. Type timer.

Metric name reactor.netty.http.server.response.time.active. Type long task timer.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.
Micrometer internally uses nanoseconds for the baseunit. However, each backend determines the actual baseunit. (i.e. Prometheus uses seconds)

Fully qualified name of the enclosing class reactor.netty.http.server.HttpServerObservations.

Table 27. Low cardinality Keys

Name

Description

method (required)

METHOD.

status (required)

STATUS.

uri (required)

URI.

Table 28. High cardinality Keys

Name

Description

http.scheme (required)

HTTP scheme.

http.status_code (required)

Status code.

net.host.name (required)

Net host name.

net.host.port (required)

Net host port.

reactor.netty.type (required)

Reactor Netty type (always server).

1.1.25. Idle Connections

The number of the idle connections in the connection pool.

Metric name reactor.netty.connection.provider.idle.connections. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.http.client.Http2ConnectionProviderMeters.

Table 29. Low cardinality Keys

Name

Description

id (required)

ID.

name (required)

NAME.

remote.address (required)

Remote address.

1.1.26. Idle Connections

The number of the idle connections in the connection pool.

Metric name reactor.netty.connection.provider.idle.connections. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.resources.ConnectionProviderMeters.

Table 30. Low cardinality Keys

Name

Description

id (required)

ID.

name (required)

NAME.

remote.address (required)

Remote address.

1.1.27. Max Connections

The maximum number of active connections that are allowed in the connection pool.

Metric name reactor.netty.connection.provider.max.connections. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.resources.ConnectionProviderMeters.

Table 31. Low cardinality Keys

Name

Description

id (required)

ID.

name (required)

NAME.

remote.address (required)

Remote address.

1.1.28. Max Pending Connections

The maximum number of requests that will be queued while waiting for a ready connection from the connection pool.

Metric name reactor.netty.connection.provider.max.pending.connections. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.resources.ConnectionProviderMeters.

Table 32. Low cardinality Keys

Name

Description

id (required)

ID.

name (required)

NAME.

remote.address (required)

Remote address.

1.1.29. Normal Cache Size

The size of the normal cache.

Metric name reactor.netty.bytebuf.allocator.normal.cache.size. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.transport.ByteBufAllocatorMeters.

Table 33. Low cardinality Keys

Name

Description

id (required)

ID.

type (required)

TYPE.

1.1.30. Pending Connections

The number of the request, that are pending acquire a connection from the connection pool.

Metric name reactor.netty.connection.provider.pending.connections. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.resources.ConnectionProviderMeters.

Table 34. Low cardinality Keys

Name

Description

id (required)

ID.

name (required)

NAME.

remote.address (required)

Remote address.

1.1.31. Pending Connections Time

Time spent in pending acquire a connection from the connection pool.

Metric name reactor.netty.connection.provider.pending.connections.time. Type timer.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.
Micrometer internally uses nanoseconds for the baseunit. However, each backend determines the actual baseunit. (i.e. Prometheus uses seconds)

Fully qualified name of the enclosing class reactor.netty.resources.ConnectionProviderMeters.

Table 35. Low cardinality Keys

Name

Description

id (required)

ID.

name (required)

NAME.

remote.address (required)

Remote address.

status (required)

STATUS.

1.1.32. Pending Streams

The number of requests that are waiting for opening HTTP/2 stream.

Metric name reactor.netty.connection.provider.pending.streams. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.http.client.Http2ConnectionProviderMeters.

Table 36. Low cardinality Keys

Name

Description

id (required)

ID.

name (required)

NAME.

remote.address (required)

Remote address.

1.1.33. Pending Streams Time

Time spent in pending acquire a stream from the connection pool.

Metric name reactor.netty.connection.provider.pending.streams.time. Type timer.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.
Micrometer internally uses nanoseconds for the baseunit. However, each backend determines the actual baseunit. (i.e. Prometheus uses seconds)

Fully qualified name of the enclosing class reactor.netty.http.client.Http2ConnectionProviderMeters.

Table 37. Low cardinality Keys

Name

Description

id (required)

ID.

name (required)

NAME.

remote.address (required)

Remote address.

status (required)

STATUS.

1.1.34. Pending Tasks

Event loop pending scheduled tasks.

Metric name reactor.netty.eventloop.pending.tasks. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.transport.EventLoopMeters.

Table 38. Low cardinality Keys

Name

Description

name (required)

NAME.

1.1.35. Small Cache Size

The size of the small cache.

Metric name reactor.netty.bytebuf.allocator.small.cache.size. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.transport.ByteBufAllocatorMeters.

Table 39. Low cardinality Keys

Name

Description

id (required)

ID.

type (required)

TYPE.

1.1.36. Streams Active

The number of HTTP/2 streams currently active on the server.

Metric name reactor.netty.http.server.streams.active. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.http.server.HttpServerMeters.

Table 40. Low cardinality Keys

Name

Description

local.address (required)

Local address.

uri (required)

URI.

1.1.37. Thread Local Caches

The number of thread local caches.

Metric name reactor.netty.bytebuf.allocator.threadlocal.caches. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.transport.ByteBufAllocatorMeters.

Table 41. Low cardinality Keys

Name

Description

id (required)

ID.

type (required)

TYPE.

1.1.38. Tls Handshake Time

TLS handshake metric.

Metric name %s - since it contains %s, the name is dynamic and will be resolved at runtime. Type timer.

Metric name %s.active - since it contains %s, the name is dynamic and will be resolved at runtime. Type long task timer.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.
Micrometer internally uses nanoseconds for the baseunit. However, each backend determines the actual baseunit. (i.e. Prometheus uses seconds)

Fully qualified name of the enclosing class reactor.netty.tcp.TlsHandshakeObservations.

Table 42. Low cardinality Keys

Name

Description

proxy.address (required)

Proxy address, when there is a proxy configured.

remote.address (required)

Remote address.

status (required)

STATUS.

Table 43. High cardinality Keys

Name

Description

reactor.netty.protocol (required)

Reactor Netty protocol (tcp/http etc.).

reactor.netty.status (required)

Reactor Netty status.

reactor.netty.type (required)

Reactor Netty type (client/server).

1.1.39. Total Connections

The number of all connections in the connection pool, active or idle.

Metric name reactor.netty.connection.provider.total.connections. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.resources.ConnectionProviderMeters.

Table 44. Low cardinality Keys

Name

Description

id (required)

ID.

name (required)

NAME.

remote.address (required)

Remote address.

1.1.40. Used Direct Memory

The number of bytes reserved by direct buffer allocator.

Metric name reactor.netty.bytebuf.allocator.used.direct.memory. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.transport.ByteBufAllocatorMeters.

Table 45. Low cardinality Keys

Name

Description

id (required)

ID.

type (required)

TYPE.

1.1.41. Used Heap Memory

The number of bytes reserved by heap buffer allocator.

Metric name reactor.netty.bytebuf.allocator.used.heap.memory. Type gauge.

KeyValues that are added after starting the Observation might be missing from the *.active metrics.

Fully qualified name of the enclosing class reactor.netty.transport.ByteBufAllocatorMeters.

Table 46. Low cardinality Keys

Name

Description

id (required)

ID.

type (required)

TYPE.

1.2. Observability - Spans

Below you can find a list of all spans declared by this project.

1.2.1. Connect Span

Connect Span.

Span name %s - since it contains %s, the name is dynamic and will be resolved at runtime.

Fully qualified name of the enclosing class reactor.netty.channel.ConnectSpans.

Table 47. Tag Keys

Name

Description

net.peer.name (required)

Net peer name.

net.peer.port (required)

Net peer port.

reactor.netty.protocol (required)

Reactor Netty protocol (tcp/http etc.).

reactor.netty.status (required)

Reactor Netty status.

reactor.netty.type (required)

Reactor Netty type (always client).

1.2.2. Hostname Resolution Span

Hostname Resolution Span.

Span name %s - since it contains %s, the name is dynamic and will be resolved at runtime.

Fully qualified name of the enclosing class reactor.netty.transport.HostnameResolutionSpans.

Table 48. Tag Keys

Name

Description

net.peer.name (required)

Net peer name.

net.peer.port (required)

Net peer port.

reactor.netty.protocol (required)

Reactor Netty protocol (tcp/http etc.).

reactor.netty.status (required)

Reactor Netty status.

reactor.netty.type (required)

Reactor Netty type (always client).

1.2.3. Http Client Response Span

Response Span.

Span name %s - since it contains %s, the name is dynamic and will be resolved at runtime.

Fully qualified name of the enclosing class reactor.netty.http.client.HttpClientSpans.

Table 49. Tag Keys

Name

Description

http.status_code (required)

Status code.

http.url (required)

URL.

net.peer.name (required)

Net peer name.

net.peer.port (required)

Net peer port.

reactor.netty.type (required)

Reactor Netty type (always client).

1.2.4. Http Server Response Span

Response Span.

Span name %s - since it contains %s, the name is dynamic and will be resolved at runtime.

Fully qualified name of the enclosing class reactor.netty.http.server.HttpServerSpans.

Table 50. Tag Keys

Name

Description

http.scheme (required)

HTTP scheme.

http.status_code (required)

Status code.

net.host.name (required)

Net host name.

net.host.port (required)

Net host port.

reactor.netty.type (required)

Reactor Netty type (always server).

1.2.5. Tls Handshake Span

TLS Handshake Span.

Span name %s - since it contains %s, the name is dynamic and will be resolved at runtime.

Fully qualified name of the enclosing class reactor.netty.tcp.TlsHandshakeSpans.

Table 51. Tag Keys

Name

Description

reactor.netty.protocol (required)

Reactor Netty protocol (tcp/http etc.).

reactor.netty.status (required)

Reactor Netty status.

reactor.netty.type (required)

Reactor Netty type (client/server).

remote.address (required)

Remote address.