Package com.vaadin.observability.spring
Class SpringMetricsServiceInitListener
java.lang.Object
com.vaadin.observability.micrometer.MetricsServiceInitListener
com.vaadin.observability.spring.SpringMetricsServiceInitListener
- All Implemented Interfaces:
com.vaadin.flow.server.VaadinServiceInitListener,Serializable,EventListener
Spring/Boot-aware
MetricsServiceInitListener that skips the default
Observation handler registration and enriches the HTTP server observation.
In Spring/Boot setups the framework already registers a
DefaultMeterObservationHandler on the shared
ObservationRegistry (via Boot's ObservationAutoConfiguration
or the user's own @Configuration), so re-registering here would
double-emit Timers. HTTP observation enrichment is delegated to
SpringHttpObservationEnricher, making the parent HTTP span render as
e.g. http post /vaadin/uidl instead of the generic
http post /**, and marking it errored when Vaadin request handling
raises an exception the servlet chain never sees.
This class is declared public so it can be reused by both
ObservabilityConfiguration (plain-Spring import) and the Boot
auto-configuration starter.
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionSpringMetricsServiceInitListener(io.micrometer.core.instrument.MeterRegistry registry, io.micrometer.observation.ObservationRegistry observationRegistry, ObservabilitySettings settings) Creates a new listener. -
Method Summary
Modifier and TypeMethodDescriptionprotected voidenrichHttpObservation(com.vaadin.flow.server.VaadinRequest request, String requestType) protected voidenrichHttpObservationRoute(com.vaadin.flow.server.VaadinRequest request, String routeTemplate) protected voidinstallDefaultObservationHandlers(io.micrometer.observation.ObservationRegistry observationRegistry, io.micrometer.core.instrument.MeterRegistry registry) protected voidmarkHttpObservationError(com.vaadin.flow.server.VaadinRequest request, Throwable failure) Methods inherited from class com.vaadin.observability.micrometer.MetricsServiceInitListener
serviceInit
-
Constructor Details
-
SpringMetricsServiceInitListener
public SpringMetricsServiceInitListener(io.micrometer.core.instrument.MeterRegistry registry, io.micrometer.observation.ObservationRegistry observationRegistry, ObservabilitySettings settings) Creates a new listener.- Parameters:
registry- the Micrometer meter registry, must not benullobservationRegistry- the Micrometer observation registry; may benullwhen noObservationRegistrybean is present — traces will be skipped in that casesettings- the observability settings, must not benull
-
-
Method Details
-
installDefaultObservationHandlers
protected void installDefaultObservationHandlers(io.micrometer.observation.ObservationRegistry observationRegistry, io.micrometer.core.instrument.MeterRegistry registry) - Overrides:
installDefaultObservationHandlersin classMetricsServiceInitListener
-
enrichHttpObservation
protected void enrichHttpObservation(com.vaadin.flow.server.VaadinRequest request, String requestType) - Overrides:
enrichHttpObservationin classMetricsServiceInitListener
-
enrichHttpObservationRoute
protected void enrichHttpObservationRoute(com.vaadin.flow.server.VaadinRequest request, String routeTemplate) - Overrides:
enrichHttpObservationRoutein classMetricsServiceInitListener
-
markHttpObservationError
protected void markHttpObservationError(com.vaadin.flow.server.VaadinRequest request, Throwable failure) - Overrides:
markHttpObservationErrorin classMetricsServiceInitListener
-