java.lang.Object
io.helidon.reactive.servicecommon.HelidonRestServiceSupport
io.helidon.reactive.metrics.MetricsSupport
- All Implemented Interfaces:
RestServiceSupport,Service
Support for metrics for Helidon Web Server.
By defaults creates the /metrics endpoint with three sub-paths: application, vendor and base.
To register with web server:
Routing.builder()
.register(MetricsSupport.create())
This class supports finer grained configuration using Helidon Config:
create(io.helidon.config.Config). The following configuration parameters can be used:
| key | default value | description |
|---|---|---|
| helidon.metrics.context | /metrics | Context root under which the rest endpoints are available |
| helidon.metrics.base.${metricName}.enabled | true | Can control which base metrics are exposed, set to false to disable a base metric |
The application metrics registry is then available as follows:
req.context().get(MetricRegistry.class).ifPresent(reg -> reg.counter("myCounter").inc());
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classA fluent API builder to build instances ofMetricsSupport. -
Method Summary
Modifier and TypeMethodDescriptionstatic MetricsSupport.Builderbuilder()Create a new builder to construct an instance.static MetricsSupportcreate()Create an instance to be registered with Web Server with all defaults.static MetricsSupportCreate an instance to be registered with Web Server maybe overriding default values with configured values.protected voidprotected voidpostConfigureEndpoint(Routing.Rules defaultRules, Routing.Rules serviceEndpointRoutingRules) Concrete implementations override this method to perform any service-specific routing set-up.voidupdate(Routing.Rules rules) UpdatesRouting.Ruleswithhandlersrepresenting this service.Methods inherited from class io.helidon.reactive.servicecommon.HelidonRestServiceSupport
configureEndpoint, configureEndpoint, context, logger
-
Method Details
-
create
Create an instance to be registered with Web Server with all defaults.- Returns:
- a new instance built with default values (for context, base metrics enabled)
-
create
Create an instance to be registered with Web Server maybe overriding default values with configured values.- Parameters:
config- Config instance to use to (maybe) override configuration of this component. See class javadoc for supported configuration keys.- Returns:
- a new instance configured withe config provided
-
builder
Create a new builder to construct an instance.- Returns:
- a new builder instance
-
update
Description copied from interface:ServiceUpdatesRouting.Ruleswithhandlersrepresenting this service.- Parameters:
rules- a routing rules to update
-
postConfigureEndpoint
protected void postConfigureEndpoint(Routing.Rules defaultRules, Routing.Rules serviceEndpointRoutingRules) Description copied from class:HelidonRestServiceSupportConcrete implementations override this method to perform any service-specific routing set-up.- Specified by:
postConfigureEndpointin classHelidonRestServiceSupport- Parameters:
defaultRules- defaultRouting.Rulesto be updatedserviceEndpointRoutingRules- actual rules (if different from the default ones) to be updated for the service endpoint
-
onShutdown
protected void onShutdown()- Overrides:
onShutdownin classHelidonRestServiceSupport
-