github micrometer-metrics/micrometer v1.16.0
1.16.0

7 hours ago

We upgraded the Prometheus Java Client to 1.4.x (#6830) which brings support for Unicode which includes some behavioral change in naming conventions, see the 1.16 Migration-Guide.

⚠️ Noteworthy

  • Deprecate the Wavefront module #6328
  • Remove deprecated io.micrometer.core.lang annotations #6407
  • Register JCache cache.removals as a FunctionCounter by default #2754
  • Improve no-op behavior of the Observation API #6700

⭐ New Features

  • Support KeyValues with annotations when using ObservedAspect/@observed #4030
  • Validate low cardinality keys #6713
  • Add counter for total loaded classes #3561
  • Add eventexecutor.workers metrics for Netty #6375
  • Avoid DistributionStatisticsConfig creation when retrieving timers #6661
  • Avoid capturing lambda allocation when retrieving existing meters #6670
  • Introduce MeterConvention #6710
  • OpenTelemetry Semantic Conventions for JVM metrics #5286
  • Add MeterFilter.forMeters utility method #6594
  • Apache HC 5 OTel semantic convention #6591
  • Improve nullability for gauges #6546
  • Metrics for Generational Shenandoah GC #4259
  • Support custom tags in NettyEventExecutorMetrics #6592
  • Support newsgroups KeyValue for Jakarta Mail instrumentation #6558
  • Add KeyName.withNoneValue() #6125
  • Add getAll to Getter for repeated metadata #6312
  • Enhance logging of negative amount in AbstractTimer.record() by printing stack trace #6530
  • Flag to register JCache cache.removals as FunctionCounter #6471
  • Improved Meter.Id#getTags() performance #6182
  • Jakarta Mail instrumentation #5985
  • Log requests as trace level for OtlpMeterRegistry #6514
  • Make KafkaMetrics refresh interval configurable #6319
  • Migrate to JSpecify annotations for nullability constraints #5547
  • Provide meter count in HighCardinalityTagsDetector #6510
  • StackdriverConfig option to not create metric descriptors #6281
  • Use String.replace() where possible #6449

🐞 Bug Fixes

  • Exclude java.* from OSGI Import-Package #6810
  • Distribution without percentiles always has value 0 in Stackdriver #6401
  • Incompatible with slf4j 2 in OSGi #6406
  • LongTaskTimer#measure does not return max duration #6421
  • Return NaN for null KafkaMetrics values #6324
  • Scrape failure when conflicting meter types are registered #6434
  • ValueResolver and ValueExpressionResolver nullability is inconsistent #6280

📔 Documentation

  • Add a note about client-side percentiles with histogram #6836
  • Add docs for HighCardinalityTagsDetector #6822
  • Polish Javadoc from gh-6319 #6376

🔨 Dependency Upgrades

  • Upgrade Micrometer Context Propagation to 1.2.0 #6860
  • Bump activemq-artemis from 2.42.0 to 2.44.0 #6850
  • Bump ch.qos.logback:logback-classic from 1.5.19 to 1.5.20 #6813
  • Bump com.google.auth:google-auth-library-oauth2-http from 1.34.0 to 1.40.0 #6801
  • Bump com.google.cloud:google-cloud-monitoring from 3.63.0 to 3.79.0 #6818
  • Bump com.google.cloud:libraries-bom from 26.60.0 to 26.71.0 #6826
  • Bump com.google.errorprone:error_prone_core from 2.42.0 to 2.43.0 #6819
  • Bump com.netflix.spectator:spectator-reg-atlas from 1.8.12 to 1.9.1 #6793
  • Bump com.uber.nullaway:nullaway from 0.12.10 to 0.12.12 #6839
  • Bump io.github.reyerizo.gradle.jcstress from 0.8.15 to 0.9.0 #6821
  • Bump io.prometheus:prometheus-metrics-bom from 1.3.6 to 1.4.2 #6830
  • Bump org.junit:junit-bom from 5.14.0 to 5.14.1 #6842
  • Bump software.amazon.awssdk:cloudwatch from 2.31.41 to 2.37.5 #6834
  • Bump spring6 from 6.2.11 to 6.2.12 #6806
  • Bump com.dynatrace.metric.util:dynatrace-metric-utils-java from 2.2.1 to 2.4.0 #6739
  • Bump dropwizard-metrics from 4.2.30 to 4.2.37 #6729
  • Bump jersey3 from 3.1.10 to 3.1.11 #6606
  • Bump io.opentelemetry.proto:opentelemetry-proto from 1.5.0-alpha to 1.7.0-alpha #6290

📝 Tasks

  • Remove optional jsr305 dependency where not needed #6493
  • Require explicit constraints in @contract #6568

❤️ Contributors

Thank you to all the contributors who worked on this release:
@isanghaessi, @izeye, @peterjeschke, @genuss, @etki, @Shaderbug, @MemencioPerez, @famaridon, @msqr, @scordio, @jbertram, @HeeChanN, @ttaehee, @deadok22, @pema4, and @thonra

Don't miss a new micrometer release

NewReleases is sending notifications on new releases.