|
|
|
@ -1076,13 +1076,17 @@ used by default if you are on Java 8 or if you are using Dropwizard metrics.
|
|
|
|
|
|
|
|
|
|
[[production-ready-metric-writers]]
|
|
|
|
|
=== Metric writers, exporters and aggregation
|
|
|
|
|
Spring Boot provides a couple of implementations of a marker interface called `Exporter`
|
|
|
|
|
which can be used to copy metric readings from the in-memory buffers to a place where they
|
|
|
|
|
can be analyzed and displayed. Indeed, if you provide a `@Bean` that implements the
|
|
|
|
|
`MetricWriter` interface and mark it `@ExportMetricWriter`, then it will automatically be
|
|
|
|
|
hooked up to an `Exporter` and fed metric updates every 5 seconds (configured via
|
|
|
|
|
`spring.metrics.export.delay-millis`). In addition, any `MetricReader` that you define and
|
|
|
|
|
mark as `@ExportMetricReader` will have its values exported by the default exporter.
|
|
|
|
|
|
|
|
|
|
Spring Boot provides a couple of implementations of a marker interface
|
|
|
|
|
called `Exporter` which can be used to copy metric readings from the
|
|
|
|
|
in-memory buffers to a place where they can be analyzed and
|
|
|
|
|
displayed. Indeed, if you provide a `@Bean` that implements the
|
|
|
|
|
`MetricWriter` interface (or `GaugeWriter` for simple use cases) and
|
|
|
|
|
mark it `@ExportMetricWriter`, then it will automatically be hooked up
|
|
|
|
|
to an `Exporter` and fed metric updates every 5 seconds (configured
|
|
|
|
|
via `spring.metrics.export.delay-millis`). In addition, any
|
|
|
|
|
`MetricReader` that you define and mark as `@ExportMetricReader` will
|
|
|
|
|
have its values exported by the default exporter.
|
|
|
|
|
|
|
|
|
|
The default exporter is a `MetricCopyExporter` which tries to optimize itself by not
|
|
|
|
|
copying values that haven't changed since it was last called (the optimization can be
|
|
|
|
|