Skip to content

Releases: micrometer-metrics/micrometer

1.13.0

13 May 19:37
v1.13.0
a5c1b72
Compare
Choose a tag to compare

Micrometer 1.13.0 is the GA version of a new feature release. See our support policy for support timelines and 1.13 Migration Guide for migration details.

Please take a look at the Migration Guide if you use Prometheus since there are breaking changes in the Prometheus registry if you are using the PrometheusMeterRegistry API in your code.

Below are the combined release notes of all the pre-release milestones and release candidate preceding it.

⚠️ Noteworthy

  • Deprecate Jersey server instrumentation in favour of the jersey-micrometer module in Jersey #4100
  • Add support for Prometheus client 1.x #4846 (please see the Migration Guide)
  • Deprecate instrumentation for Jetty 9, 10, 11 that is out of support #4779
  • Deprecate Hystrix instrumentation #4587
  • JvmHeapPressureMetrics have incorrect base unit #3236
  • Remove v1 CloudWatch module #1473
  • Make DefaultHttpClientObservationConvention#INSTANCE final #4770
  • Downgrade to Mockito 4 from Mockito 5 in micrometer-observation-test module #4968
  • Remove unnecessary mockito dependency in micrometer-test #4963

⭐ New Features / Enhancements

  • Remove unnecessary call to getConventionName in PrometheusMeterRegistry #4607
  • Add log for negative amount in AbstractTimer.record() #4573
  • Add response headers and trailers to gRPC observation context #4516
  • Don't overwrite reserved resource attributes #4503
  • Additional support for OTLP env vars #4500
  • Add database tag to DefaultMongoCommandTagsProvider #4298
  • ObservationGrpcServerInterceptor does not store observation in a context #4218
  • Deprecate Jersey server instrumentation in favour of the jersey-micrometer module in Jersey #4100
  • Missing option to get response headers in GrpcServerObservationConvention #4012
  • Remove metrics when shutting down InstrumentedQueuedThreadPool #4000
  • Support jOOQ 3.15 and later #3828
  • Allow customizing start log message in PushMeterRegistry implementations #4848
  • Manage context-propagation version in micrometer-bom #4847
  • Add support for Prometheus 1.x #4846
  • "Failed to publish metrics to OTLP receiver" error message contains no actionable context #4829
  • Support @Counted on classes #4746
  • Publish a separate module with jdk11 classes #4728
  • Make JettyClientMetrics compatible with Jetty12 #4609
  • Make it possible to disable LongtaskTimer creation in DefaultMeterObservationHandler #4604
  • Add Meter for process CPU time #4498
  • Make Jetty server metrics work with Jetty 12 #4261
  • OTLPMeterRegistry should adhere to OpenTelemetry data model for producing metrics #4053
  • Asserting Observation keys and value should offer suggestions from the other cardinality bucket. #4046
  • Ignore class level AOP annotation if method level present #3811
  • Remove v1 CloudWatch module #1473
  • Log CloudWatch metric data when publishing fails #1396
  • [Dynatrace] debug log in exporter when no meters are registered #4951
  • Warn when a MeterFilter is configured after a meter is registered #4917
  • Allow customizing PrometheusProperties via PrometheusConfig #4875
  • Add Exemplars support to Prometheus 1.x #4867
  • Sanitize metric names for the Prometheus client #4866
  • Add constructor with logger name for WarnThenDebugLogger #4865
  • Do not re-apply MeterFilters to IDs when registering if unnecessary #4856
  • Announce OtlpMeterRegistry configuration found at startup #4830
  • Record Jetty bytes in/out metrics through network listeners #4514

🐞 Bug Fixes

  • com.google.cloud:libraries-bom version is not pinned #4711
  • BOM contains reference to unpublished docs module #4585
  • [Dynatrace] Logging verbosity: Move metadata discrepancy logging to WarnThenDebug #4583
  • ObservationGrpcServerCallListener does not capture an uncontrolled error during the execution of the service logic #4490
  • URL decode headers from environment variables in OtlpConfig #4595
  • @MeterTag does not work on package private method #4506
  • DefaultLongTaskTimer class throws an IllegalArgumentException when percentiles is empty #4482
  • Stackdriver exception trying to publish metrics during shutdown #4353
  • TimeWindowMax throws ArithmeticException with a rotateFrequency of 0 #3068
  • JvmGcMetricsTest#sizeMetricsNotSetToZero is failing on CI with generational ZGC #4497
  • Bug: DropwizardMeterRegistry does not remove Gauges created by LongTaskTimer #2924
  • JvmHeapPressureMetrics have incorrect base unit #3236
  • GC Pause time metric includes concurrent cycle time for Generational ZGC #4764
  • OSGi import of javax.annotation and javax.annotation.meta is incorrect #4824
  • Use Dynatrace snapshot for LongTaskTimer #4780
  • CloudWatchMeterRegistry logs timeout message when there was an interrupt and does not log anything when there was a timeout #4775
  • NullPointerException in DefaultJmsProcessObservationConvention #4966
  • OTLP Gauge datapoint timestamp should be time at sampling #5044
  • AnnotationHandler can't see methods from parent class #4983
  • JettyConnectionMetrics#addToAllConnectors does not configure bytes in/out metrics #5092
  • Do not set explicit unit on Prometheus 1.x Metadata #5038
  • MeterRegistry#removeByPreFilterId returns null when multiple pre-filter IDs map to same ID #5035
  • Use GaugeHistogram for Prometheus LongTaskTimer #4988

📔 Documentation

  • Document newly supported OTLP env vars #4566
  • Observat...
Read more

1.12.6

13 May 07:51
55ccf17
Compare
Choose a tag to compare

⚠️ Noteworthy

  • Downgrade to Mockito 4 from Mockito 5 in micrometer-observation-test module #4968

🐞 Bug Fixes

  • NullPointerException in DefaultJmsProcessObservationConvention #4966
  • OTLP Gauge datapoint timestamp should be time at sampling #5044
  • AnnotationHandler can't see methods from parent class #4983

🔨 Dependency Upgrades

  • Bump com.amazonaws:aws-java-sdk-cloudwatch from 1.12.696 to 1.12.720 #5042 #5086
  • Bump com.dynatrace.metric.util:dynatrace-metric-utils-java from 2.2.0 to 2.2.1 #5005
  • Bump com.signalfx.public:signalfx-java from 1.0.40 to 1.0.41 #5000
  • Bump com.netflix.spectator:spectator-reg-atlas from 1.7.11 to 1.7.12 #4994

❤️ Contributors

Thank you to all the contributors who worked on this release:

@izeye, @tdinev, @lenin-jaganathan and @MartinUhlen

1.11.12

13 May 06:12
a13a46a
Compare
Choose a tag to compare

⚠️ Noteworthy

  • Downgrade to Mockito 4 from Mockito 5 in micrometer-observation-test module #4968

🐞 Bug Fixes

  • OTLP Gauge datapoint timestamp should be time at sampling #5044
  • AnnotationHandler can't see methods from parent class #4983

🔨 Dependency Upgrades

  • Bump com.amazonaws:aws-java-sdk-cloudwatch from 1.12.696 to 1.12.720 #5004 #5049 #5076
  • Bump com.signalfx.public:signalfx-java from 1.0.40 to 1.0.41 #4996

❤️ Contributors

Thank you to all the contributors who worked on this release:

@lenin-jaganathan and @MartinUhlen

1.13.0-RC1

08 Apr 17:21
73f8879
Compare
Choose a tag to compare
1.13.0-RC1 Pre-release
Pre-release

⭐ New Features

  • [Dynatrace] debug log in exporter when no meters are registered #4951
  • Warn when a MeterFilter is configured after a meter is registered #4917
  • Allow customizing PrometheusProperties via PrometheusConfig #4875
  • Add Exemplars support to Prometheus 1.x #4867
  • Sanitize metric names for the Prometheus client #4866
  • Add constructor with logger name for WarnThenDebugLogger #4865
  • Do not re-apply MeterFilters to IDs when registering if unnecessary #4856
  • Announce OtlpMeterRegistry configuration found at startup #4830
  • Record Jetty bytes in/out metrics through network listeners #4514

🔨 Dependency Upgrades

  • Bump com.amazonaws:aws-java-sdk-cloudwatch from 1.12.691 to 1.12.696 #4940
  • Bump software.amazon.awssdk:cloudwatch from 2.25.4 to 2.25.26 #4937
  • Bump com.google.cloud:google-cloud-monitoring from 3.40.0 to 3.42.0 #4933
  • Bump com.google.cloud:libraries-bom from 26.33.0 to 26.37.0 #4932
  • Bump com.signalfx.public:signalfx-java from 1.0.39 to 1.0.40 #4911

❤️ Contributors

Thank you to all the contributors who worked on this release:

@cachescrubber, @climategadgets, @heowc, @izeye, @pichlermarc, and @lenin-jaganathan

1.12.5

08 Apr 13:51
52d1d12
Compare
Choose a tag to compare

⭐ New Features

  • Deprecate DefaultUriMapper and PoolingHttpClientConnectionManagerMetricsBinder in httpcomponents #4862
  • Use same description for same meter name in Log4j2Metrics #4864

🔨 Dependency Upgrades

  • Bump com.amazonaws:aws-java-sdk-cloudwatch from 1.12.691 to 1.12.696 #4926
  • Bump com.netflix.spectator:spectator-reg-atlas from 1.7.8 to 1.7.11 #4925
  • Bump com.signalfx.public:signalfx-java from 1.0.39 to 1.0.40 #4907

❤️ Contributors

Thank you to all the contributors who worked on this release:

@izeye

1.11.11

08 Apr 12:05
f24e045
Compare
Choose a tag to compare

⭐ New Features

  • Use same description for same meter name in Log4j2Metrics #4864

🔨 Dependency Upgrades

  • Bump com.amazonaws:aws-java-sdk-cloudwatch from 1.12.691 to 1.12.696 #4924
  • Bump com.signalfx.public:signalfx-java from 1.0.39 to 1.0.40 #4886

❤️ Contributors

Thank you to all the contributors who worked on this release:

@izeye

1.13.0-M2

11 Mar 23:08
v1.13.0-M2
54344d1
Compare
Choose a tag to compare
1.13.0-M2 Pre-release
Pre-release

⚠️ Noteworthy

  • Add support for Prometheus client 1.x #4846
  • Deprecate instrumentation for Jetty 9, 10, 11 that is out of support #4779
  • Deprecate Hystrix instrumentation #4587
  • JvmHeapPressureMetrics have incorrect base unit #3236
  • Remove v1 CloudWatch module #1473
  • Make DefaultHttpClientObservationConvention#INSTANCE final #4770

⭐ New Features / Enhancements

  • Allow customizing start log message in PushMeterRegistry implementations #4848
  • Manage context-propagation version in micrometer-bom #4847
  • Add support for Prometheus 1.x #4846
  • "Failed to publish metrics to OTLP receiver" error message contains no actionable context #4829
  • Support @Counted on classes #4746
  • Publish a separate module with jdk11 classes #4728
  • Make JettyClientMetrics compatible with Jetty12 #4609
  • Make it possible to disable LongtaskTimer creation in DefaultMeterObservationHandler #4604
  • Add Meter for process CPU time #4498
  • Make Jetty server metrics work with Jetty 12 #4261
  • OTLPMeterRegistry should adhere to OpenTelemetry data model for producing metrics #4053
  • Asserting Observation keys and value should offer suggestions from the other cardinality bucket. #4046
  • Ignore class level AOP annotation if method level present #3811
  • Remove v1 CloudWatch module #1473
  • Log CloudWatch metric data when publishing fails #1396

🐞 Bug Fixes

  • JvmHeapPressureMetrics have incorrect base unit #3236
  • GC Pause time metric includes concurrent cycle time for Generational ZGC #4764
  • OSGi import of javax.annotation and javax.annotation.meta is incorrect #4824
  • Use Dynatrace snapshot for LongTaskTimer #4780
  • CloudWatchMeterRegistry logs timeout message when there was an interrupt and does not log anything when there was a timeout #4775

📔 Documentation

  • Document Java HttpClient instrumentation #4752

🔨 Dependency Upgrades

  • Bump com.google.cloud:google-cloud-monitoring from 3.35.0 to 3.37.0 #4841
  • Bump com.amazonaws:aws-java-sdk-cloudwatch from 1.12.655 to 1.12.674 #4835
  • Bump software.amazon.awssdk:cloudwatch from 2.23.21 to 2.25.4 #4833
  • Bump com.google.cloud:libraries-bom from 26.31.0 to 26.33.0 #4807
  • Bump com.signalfx.public:signalfx-java from 1.0.38 to 1.0.39 #4805

❤️ Contributors

Thank you to all the contributors who worked on this release:

@climategadgets, @izeye, @monosoul, @quaff, @ponziani, @simonzn, @adpaste, @pirgeo, @joakime, and @lenin-jaganathan

1.12.4

11 Mar 15:12
52075c6
Compare
Choose a tag to compare

Noteworthy

  • Make DefaultHttpClientObservationConvention#INSTANCE final #4770

🐞 Bug Fixes

  • GC Pause time metric includes concurrent cycle time for Generational ZGC #4764
  • OSGi import of javax.annotation and javax.annotation.meta is incorrect #4824
  • Use Dynatrace snapshot for LongTaskTimer #4780
  • CloudWatchMeterRegistry logs timeout message when there was an interrupt and does not log anything when there was a timeout #4775

🔨 Dependency Upgrades

  • Bump com.netflix.spectator:spectator-reg-atlas from 1.7.7 to 1.7.8 #4839
  • Bump com.amazonaws:aws-java-sdk-cloudwatch from 1.12.655 to 1.12.674 #4834
  • Bump com.signalfx.public:signalfx-java from 1.0.38 to 1.0.39 #4822

📝 Tasks

  • ArchUnit 1.x is pulling in slf4j 2.x #4777
  • Replace deprecated buildDir #4771

❤️ Contributors

Thank you to all the contributors who worked on this release:

@izeye, @ponziani, @adpaste, and @pirgeo

1.11.10

11 Mar 14:49
37bfdfd
Compare
Choose a tag to compare

Noteworthy

  • Make DefaultHttpClientObservationConvention#INSTANCE final #4770

🐞 Bug Fixes

  • OSGi import of javax.annotation and javax.annotation.meta is incorrect #4824
  • Use Dynatrace snapshot for LongTaskTimer #4780
  • CloudWatchMeterRegistry logs timeout message when there was an interrupt and does not log anything when there was a timeout #4775

🔨 Dependency Upgrades

  • Bump com.amazonaws:aws-java-sdk-cloudwatch from 1.12.655 to 1.12.674 #4837
  • Bump com.signalfx.public:signalfx-java from 1.0.38 to 1.0.39 #4822

📝 Tasks

  • ArchUnit 1.x is pulling in slf4j 2.x #4777
  • Replace deprecated buildDir #4771

❤️ Contributors

Thank you to all the contributors who worked on this release:

@izeye, @ponziani, @adpaste, and @pirgeo

1.13.0-M1

12 Feb 20:34
v1.13.0-M1
639c93a
Compare
Choose a tag to compare
1.13.0-M1 Pre-release
Pre-release

⚠️ Noteworthy

  • Deprecate Jersey server instrumentation in favour of the jersey-micrometer module in Jersey #4100

⭐ New Features / Enhancements

  • Remove unnecessary call to getConventionName in PrometheusMeterRegistry #4607
  • Add log for negative amount in AbstractTimer.record() #4573
  • Add response headers and trailers to gRPC observation context #4516
  • Don't overwrite reserved resource attributes #4503
  • Additional support for OTLP env vars #4500
  • Add database tag to DefaultMongoCommandTagsProvider #4298
  • ObservationGrpcServerInterceptor does not store observation in a context #4218
  • Deprecate Jersey server instrumentation in favour of the jersey-micrometer module in Jersey #4100
  • Missing option to get response headers in GrpcServerObservationConvention #4012
  • Remove metrics when shutting down InstrumentedQueuedThreadPool #4000
  • Support jOOQ 3.15 and later #3828

🐞 Bug Fixes

  • com.google.cloud:libraries-bom version is not pinned #4711
  • BOM contains reference to unpublished docs module #4585
  • [Dynatrace] Logging verbosity: Move metadata discrepancy logging to WarnThenDebug #4583
  • ObservationGrpcServerCallListener does not capture an uncontrolled error during the execution of the service logic #4490
  • URL decode headers from environment variables in OtlpConfig #4595
  • @MeterTag does not work on package private method #4506
  • DefaultLongTaskTimer class throws an IllegalArgumentException when percentiles is empty #4482
  • Stackdriver exception trying to publish metrics during shutdown #4353
  • TimeWindowMax throws ArithmeticException with a rotateFrequency of 0 #3068
  • JvmGcMetricsTest#sizeMetricsNotSetToZero is failing on CI with generational ZGC #4497
  • Bug: DropwizardMeterRegistry does not remove Gauges created by LongTaskTimer #2924

📔 Documentation

  • Document newly supported OTLP env vars #4566
  • Observation API bird's eye view #4726
  • Replace full urls to xref wherever it is possible #4714
  • Update docs with changes from old docs site #4611
  • Reference doc update for tomcat #4599
  • Reference doc update for system #4598
  • Reference doc update for mongodb #4594
  • Reference doc update for logging #4593
  • Reference doc update for Kafka #4592
  • Reference doc update for OkHttp #4586
  • Added Jetty reference doc #4584
  • HttpClient reference documentation #4579
  • gRPC reference documentation #4575
  • Database reference documentation #4574
  • Added examples of Apache Commons Pool #4570
  • Added examples of cache usage #4569
  • Clarify time window length in documentation #4625

🔨 Dependency Upgrades

  • Bump org.junit.platform:junit-platform-launcher from 1.10.1 to 1.10.2 #4743
  • Bump software.amazon.awssdk:cloudwatch from 2.23.17 to 2.23.21 #4740
  • Bump com.google.auth:google-auth-library-oauth2-http from 1.22.0 to 1.23.0 #4732
  • Bump com.amazonaws:aws-java-sdk-cloudwatch from 1.12.651 to 1.12.655 #4731
  • Bump com.amazonaws:aws-java-sdk-cloudwatch from 1.12.650 to 1.12.651 #4723
  • Bump software.amazon.awssdk:cloudwatch from 2.23.16 to 2.23.17 #4720
  • Bump com.dynatrace.metric.util:dynatrace-metric-utils-java from 2.1.0 to 2.2.0 #4719
  • Bump com.netflix.spectator:spectator-reg-atlas from 1.7.4 to 1.7.7 #4718
  • Bump io.grpc:grpc-kotlin-stub from 1.4.0 to 1.4.1 #4717
  • Bump com.google.cloud:google-cloud-monitoring from 3.32.0 to 3.35.0 #4709
  • Bump org.assertj:assertj-core from 3.25.0 to 3.25.2 #4708
  • Bump org.mockito:mockito-core from 5.8.0 to 5.10.0 #4707
  • Bump activemq-artemis from 2.31.2 to 2.32.0 #4705
  • Bump org.aspectj:aspectjweaver from 1.9.20.1 to 1.9.21 #4702
  • Bump com.jayway.jsonpath:json-path from 2.8.0 to 2.9.0 #4701
  • Bump com.diffplug.spotless:spotless-plugin-gradle from 6.23.3 to 6.25.0 #4699
  • Bump software.amazon.awssdk:cloudwatch from 2.22.9 to 2.23.16 #4698
  • Bump org.apache.httpcomponents.client5:httpclient5 from 5.3 to 5.3.1 #4697
  • Bump org.apache.logging.log4j:log4j-core from 2.22.0 to 2.22.1 #4695
  • Bump org.gradle.toolchains.foojay-resolver-convention from 0.7.0 to 0.8.0 #4694
  • Bump com.amazonaws:aws-java-sdk-cloudwatch from 1.12.649 to 1.12.650 #4692
  • Bump com.google.auth:google-auth-library-oauth2-http from 1.20.0 to 1.22.0 #4671
  • Bump com.fasterxml.jackson.core:jackson-databind from 2.16.0 to 2.16.1 #4670
  • Bump testcontainers from 1.19.3 to 1.19.4 #4669
  • Bump com.amazonaws:aws-java-sdk-cloudwatch from 1.12.629 to 1.12.649 #4666
  • Bump dropwizard-metrics from 4.2.23 to 4.2.25 #4663
  • Bump io.opentelemetry.proto:opentelemetry-proto from 1.0.0-alpha to 1.1.0-alpha #4660
  • Downgrade okhttp to 4.11.0 upgrade Kotlin to 1.9 #4597
  • Bump org.apache.tomcat.embed:tomcat-embed-core from 8.5.96 to 8.5.97 #4541
  • Bump dagger from 2.49 to 2.50 #4537
  • Bump org.assertj:assertj-core from 3.24.2 to 3.25.0 #4535
  • Bump io.netty:netty-bom from 4.1.101.Final to 4.1.104.Final #4533
  • Bump software.amazon.awssdk:cloudwatch from 2.21.41 to 2.22.9 #4531
  • Bump com.gradle.enterprise from 3.16 to 3.16.1 #4530
  • Bump com.google.cloud:google-cloud-monitoring from 3.31.0 to 3.32.0 #4477
  • Bump com.diffplug.spotless:spotless-plugin-gradle from 6.22.0 to 6.23.3 #4476...
Read more