Skip to content

v3.0.0

Latest
Compare
Choose a tag to compare
@urbim urbim released this 05 Dec 14:55
· 2 commits to master since this release

We are excited to announce a new major version of KumuluzEE Metrics - 3.0.0. This release implements the MicroProfile Metrics 3.0 and introduces a number of breaking changes.

Everything related to reusability is now gone. All metrics are now considered reusable. This reduces complexity and keeps things simple. CDI produces annotated with @Metric now no longer trigger metric registration - these metrics should now be registered manually.

The MetricRegistry API has changed. It is no longer abstract class but interface and a number of helper methods have been added (see the MicroProfile specification for more details). The Timer.update method signature has been changed from long + TimeUnit to Duration. The Metadata and MetadataBuilder API has also been changed - it is now more consistent regarding the Optional class usage.

There were also some additions to metric types. Histograms now track sum - the total of all submitted values and Timer exposes the total elapsed time. Simple Timer also received updates and now tracks the highest and lowest duration of the previous minute. These additions are exposed in both the Prometheus (OpenMetrics) and JSON format.

The extension has also been updated to the new core (KumuluzEE 4) and supports Java 17 and 18. Since KumuluzEE 4 drops support for Java 1.8, the support was also removed in KumuluzEE Metrics 3.0.0

Features

  • Removed reusable from annotations
  • Added sum to Histogram
  • Added total elapsed time to Timer
  • Added min and max in previous completed minute to Simple Timer

Enhancements

  • KumuluzEE Config MP is no longer required dependency but optional
  • Implemented breaking changes from the MicroProfile Metrics spec on MetricRegistry, Metadata and MetadataBuilder
  • Cleaned up and improved readability

Bugs

  • Added support for the CDI @Stereotype annotation