Class MetricsCollector.Snapshot
java.lang.Object
com.soklet.MetricsCollector.Snapshot
- Enclosing interface:
MetricsCollector
Immutable snapshot of collected metrics.
Durations are in nanoseconds, sizes are in bytes, and queue depths are raw counts.
Histogram values are captured as MetricsCollector.HistogramSnapshot instances.
Connection counts report total accepted/rejected connections for the HTTP and SSE servers.
Request read failures and request rejections are reported separately for HTTP and SSE traffic.
Instances are typically produced by MetricsCollector.snapshot() but can also be built
manually via builder().
- Author:
- Mark Allen
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classBuilder used to construct instances ofMetricsCollector.Snapshot. -
Method Summary
Modifier and TypeMethodDescriptionbuilder()Acquires an "empty" builder forMetricsCollector.Snapshotinstances.Returns the number of active HTTP requests.Returns the number of active server-sent event connections.Returns the total number of accepted HTTP connections.Returns the total number of rejected HTTP connections.@NonNull Map<@NonNull MetricsCollector.ServerRouteStatusKey, @NonNull MetricsCollector.HistogramSnapshot> Returns HTTP handler duration histograms keyed by server route and status class.Returns HTTP request body size histograms keyed by server route.@NonNull Map<@NonNull MetricsCollector.ServerRouteStatusKey, @NonNull MetricsCollector.HistogramSnapshot> Returns HTTP request duration histograms keyed by server route and status class.Returns HTTP request read failure counters keyed by failure reason.Returns HTTP request rejection counters keyed by rejection reason.@NonNull Map<@NonNull MetricsCollector.ServerRouteStatusKey, @NonNull MetricsCollector.HistogramSnapshot> Returns HTTP response body size histograms keyed by server route and status class.@NonNull Map<@NonNull MetricsCollector.ServerRouteStatusKey, @NonNull MetricsCollector.HistogramSnapshot> Returns HTTP time-to-first-byte histograms keyed by server route and status class.@NonNull Map<@NonNull MetricsCollector.ServerSentEventCommentRouteKey, @NonNull MetricsCollector.HistogramSnapshot> Returns SSE comment delivery lag histograms keyed by route and comment type.Returns SSE comment drop counters keyed by route, comment type, and drop reason.Returns SSE comment enqueue outcome counters keyed by route, comment type, and outcome.@NonNull Map<@NonNull MetricsCollector.ServerSentEventCommentRouteKey, @NonNull MetricsCollector.HistogramSnapshot> Returns SSE comment queue depth histograms keyed by route and comment type.@NonNull Map<@NonNull MetricsCollector.ServerSentEventCommentRouteKey, @NonNull MetricsCollector.HistogramSnapshot> Returns SSE comment size histograms keyed by route and comment type.@NonNull Map<@NonNull MetricsCollector.ServerSentEventRouteTerminationKey, @NonNull MetricsCollector.HistogramSnapshot> Returns SSE connection duration histograms keyed by route and termination reason.Returns the total number of accepted SSE connections.Returns the total number of rejected SSE connections.@NonNull Map<@NonNull MetricsCollector.ServerSentEventRouteKey, @NonNull MetricsCollector.HistogramSnapshot> Returns SSE event delivery lag histograms keyed by route.Returns SSE event drop counters keyed by route and drop reason.Returns SSE event enqueue outcome counters keyed by route and outcome.@NonNull Map<@NonNull MetricsCollector.ServerSentEventRouteKey, @NonNull MetricsCollector.HistogramSnapshot> Returns SSE event size histograms keyed by route.@NonNull Map<@NonNull MetricsCollector.ServerSentEventRouteKey, @NonNull MetricsCollector.HistogramSnapshot> Returns SSE event write duration histograms keyed by route.Returns SSE handshake acceptance counters keyed by route.Returns SSE handshake rejection counters keyed by route and failure reason.@NonNull Map<@NonNull MetricsCollector.ServerSentEventRouteKey, @NonNull MetricsCollector.HistogramSnapshot> Returns SSE queue depth histograms keyed by route.Returns SSE request read failure counters keyed by failure reason.Returns SSE request rejection counters keyed by rejection reason.@NonNull Map<@NonNull MetricsCollector.ServerSentEventRouteKey, @NonNull MetricsCollector.HistogramSnapshot> Returns SSE time-to-first-event histograms keyed by route.
-
Method Details
-
builder
Acquires an "empty" builder forMetricsCollector.Snapshotinstances.- Returns:
- the builder
-
getActiveRequests
Returns the number of active HTTP requests.- Returns:
- the active HTTP request count
-
getActiveSseConnections
Returns the number of active server-sent event connections.- Returns:
- the active SSE connection count
-
getHttpConnectionsAccepted
Returns the total number of accepted HTTP connections.- Returns:
- total accepted HTTP connections
-
getHttpConnectionsRejected
Returns the total number of rejected HTTP connections.- Returns:
- total rejected HTTP connections
-
getSseConnectionsAccepted
Returns the total number of accepted SSE connections.- Returns:
- total accepted SSE connections
-
getSseConnectionsRejected
Returns the total number of rejected SSE connections.- Returns:
- total rejected SSE connections
-
getHttpRequestReadFailures
public @NonNull Map<@NonNull MetricsCollector.RequestReadFailureKey, @NonNull Long> getHttpRequestReadFailures()Returns HTTP request read failure counters keyed by failure reason.- Returns:
- HTTP request read failure counters
-
getHttpRequestRejections
public @NonNull Map<@NonNull MetricsCollector.RequestRejectionKey, @NonNull Long> getHttpRequestRejections()Returns HTTP request rejection counters keyed by rejection reason.- Returns:
- HTTP request rejection counters
-
getSseRequestReadFailures
public @NonNull Map<@NonNull MetricsCollector.RequestReadFailureKey, @NonNull Long> getSseRequestReadFailures()Returns SSE request read failure counters keyed by failure reason.- Returns:
- SSE request read failure counters
-
getSseRequestRejections
public @NonNull Map<@NonNull MetricsCollector.RequestRejectionKey, @NonNull Long> getSseRequestRejections()Returns SSE request rejection counters keyed by rejection reason.- Returns:
- SSE request rejection counters
-
getHttpRequestDurations
public @NonNull Map<@NonNull MetricsCollector.ServerRouteStatusKey, @NonNull MetricsCollector.HistogramSnapshot> getHttpRequestDurations()Returns HTTP request duration histograms keyed by server route and status class.- Returns:
- HTTP request duration histograms
-
getHttpHandlerDurations
public @NonNull Map<@NonNull MetricsCollector.ServerRouteStatusKey, @NonNull MetricsCollector.HistogramSnapshot> getHttpHandlerDurations()Returns HTTP handler duration histograms keyed by server route and status class.- Returns:
- HTTP handler duration histograms
-
getHttpTimeToFirstByte
public @NonNull Map<@NonNull MetricsCollector.ServerRouteStatusKey, @NonNull MetricsCollector.HistogramSnapshot> getHttpTimeToFirstByte()Returns HTTP time-to-first-byte histograms keyed by server route and status class.- Returns:
- HTTP time-to-first-byte histograms
-
getHttpRequestBodyBytes
public @NonNull Map<@NonNull MetricsCollector.ServerRouteKey, @NonNull MetricsCollector.HistogramSnapshot> getHttpRequestBodyBytes()Returns HTTP request body size histograms keyed by server route.- Returns:
- HTTP request body size histograms
-
getHttpResponseBodyBytes
public @NonNull Map<@NonNull MetricsCollector.ServerRouteStatusKey, @NonNull MetricsCollector.HistogramSnapshot> getHttpResponseBodyBytes()Returns HTTP response body size histograms keyed by server route and status class.- Returns:
- HTTP response body size histograms
-
getSseHandshakesAccepted
public @NonNull Map<@NonNull MetricsCollector.ServerSentEventRouteKey, @NonNull Long> getSseHandshakesAccepted()Returns SSE handshake acceptance counters keyed by route.- Returns:
- SSE handshake acceptance counters
-
getSseHandshakesRejected
public @NonNull Map<@NonNull MetricsCollector.ServerSentEventRouteHandshakeFailureKey, @NonNull Long> getSseHandshakesRejected()Returns SSE handshake rejection counters keyed by route and failure reason.- Returns:
- SSE handshake rejection counters
-
getSseEventEnqueueOutcomes
public @NonNull Map<@NonNull MetricsCollector.ServerSentEventRouteEnqueueOutcomeKey, @NonNull Long> getSseEventEnqueueOutcomes()Returns SSE event enqueue outcome counters keyed by route and outcome.- Returns:
- SSE event enqueue outcome counters
-
getSseCommentEnqueueOutcomes
public @NonNull Map<@NonNull MetricsCollector.ServerSentEventCommentRouteEnqueueOutcomeKey, @NonNull Long> getSseCommentEnqueueOutcomes()Returns SSE comment enqueue outcome counters keyed by route, comment type, and outcome.- Returns:
- SSE comment enqueue outcome counters
-
getSseEventDrops
public @NonNull Map<@NonNull MetricsCollector.ServerSentEventRouteDropKey, @NonNull Long> getSseEventDrops()Returns SSE event drop counters keyed by route and drop reason.- Returns:
- SSE event drop counters
-
getSseCommentDrops
public @NonNull Map<@NonNull MetricsCollector.ServerSentEventCommentRouteDropKey, @NonNull Long> getSseCommentDrops()Returns SSE comment drop counters keyed by route, comment type, and drop reason.- Returns:
- SSE comment drop counters
-
getSseTimeToFirstEvent
public @NonNull Map<@NonNull MetricsCollector.ServerSentEventRouteKey, @NonNull MetricsCollector.HistogramSnapshot> getSseTimeToFirstEvent()Returns SSE time-to-first-event histograms keyed by route.- Returns:
- SSE time-to-first-event histograms
-
getSseEventWriteDurations
public @NonNull Map<@NonNull MetricsCollector.ServerSentEventRouteKey, @NonNull MetricsCollector.HistogramSnapshot> getSseEventWriteDurations()Returns SSE event write duration histograms keyed by route.- Returns:
- SSE event write duration histograms
-
getSseEventDeliveryLag
public @NonNull Map<@NonNull MetricsCollector.ServerSentEventRouteKey, @NonNull MetricsCollector.HistogramSnapshot> getSseEventDeliveryLag()Returns SSE event delivery lag histograms keyed by route.- Returns:
- SSE event delivery lag histograms
-
getSseEventSizes
public @NonNull Map<@NonNull MetricsCollector.ServerSentEventRouteKey, @NonNull MetricsCollector.HistogramSnapshot> getSseEventSizes()Returns SSE event size histograms keyed by route.- Returns:
- SSE event size histograms
-
getSseQueueDepth
public @NonNull Map<@NonNull MetricsCollector.ServerSentEventRouteKey, @NonNull MetricsCollector.HistogramSnapshot> getSseQueueDepth()Returns SSE queue depth histograms keyed by route.- Returns:
- SSE queue depth histograms
-
getSseCommentDeliveryLag
public @NonNull Map<@NonNull MetricsCollector.ServerSentEventCommentRouteKey, @NonNull MetricsCollector.HistogramSnapshot> getSseCommentDeliveryLag()Returns SSE comment delivery lag histograms keyed by route and comment type.- Returns:
- SSE comment delivery lag histograms
-
getSseCommentSizes
public @NonNull Map<@NonNull MetricsCollector.ServerSentEventCommentRouteKey, @NonNull MetricsCollector.HistogramSnapshot> getSseCommentSizes()Returns SSE comment size histograms keyed by route and comment type.- Returns:
- SSE comment size histograms
-
getSseCommentQueueDepth
public @NonNull Map<@NonNull MetricsCollector.ServerSentEventCommentRouteKey, @NonNull MetricsCollector.HistogramSnapshot> getSseCommentQueueDepth()Returns SSE comment queue depth histograms keyed by route and comment type.- Returns:
- SSE comment queue depth histograms
-
getSseConnectionDurations
public @NonNull Map<@NonNull MetricsCollector.ServerSentEventRouteTerminationKey, @NonNull MetricsCollector.HistogramSnapshot> getSseConnectionDurations()Returns SSE connection duration histograms keyed by route and termination reason.- Returns:
- SSE connection duration histograms
-