Commit Graph

2089 Commits

Author SHA1 Message Date
Jonatan Ivanov 415b9025c8 Use TracingAwareMeterObservationHandler if tracing is configured
See gh-32399
2022-10-13 12:09:43 +01:00
Bertolt Meier 647a2905c8 Add checkstyle rule for List.of() / Set.of() / Map.of()
This commits adds a checkstyle rule to not use List.of(), Set.of()
and Map.of(), preferring Collections.emptyList(), emptySet(), and
emptyMap() respectively.

It replaces usages of these methods across the codebase.

See gh-32655
2022-10-12 18:15:48 +01:00
Johnny Lim 1032f8cc94 Polish Micrometer tracing changes
See gh-32627
2022-10-12 18:05:41 +01:00
Andy Wilkinson e4544c1785 Use new constructor to configure W3CPropagation without baggage
Closes gh-32524
2022-10-12 17:19:45 +01:00
Andy Wilkinson 180d0edbca Decouple AutoTimeProperties from Micrometer Core
Closes gh-32676
2022-10-12 14:40:42 +01:00
Andy Wilkinson 7e9e64a2ea Revert "Merge pull request #32399 from jonatan-ivanov"
This reverts commit ad40ef3398, reversing
changes made to 6eb32647f5.
2022-10-12 14:36:08 +01:00
Jonatan Ivanov a0ceb2c3ff Use TracingAwareMeterObservationHandler if tracing is configured
See gh-32399
2022-10-12 13:57:39 +01:00
Jonatan Ivanov fff4aaaac1 Fix Observation lifecycle issues in ObservationAutoConfigurationTests
See gh-32662
2022-10-12 13:31:21 +01:00
Andy Wilkinson 403803837a Adapt to changes in REST Docs for documenting query parameters
See gh-32623
2022-10-12 11:30:57 +01:00
Andy Wilkinson 4dfd770406 Ensure that metrics and observation properties are enabled
Closes gh-32676
2022-10-11 20:30:40 +01:00
Johnny Lim 73fd760137 Polish HTTP client observability changes
See gh-32484
See gh-32518

Closes gh-32636
2022-10-07 19:05:14 +02:00
Marcin Grzejszczak dfd148fb76 Make auto-configured Brave Tracer more compliant with OTel tracer
By default we will not support joined spans and the trace ID will
be 128-bit.

See gh-32615
2022-10-07 11:14:46 +01:00
Brian Clozel 3e6ad67f16 Switch to Micrometer 1.10.0-SNAPSHOT
See gh-32598
2022-10-06 15:18:32 +02:00
Stephane Nicoll d106fc266a Revert "Adapt to deprecations in Spring Framework snapshots"
This reverts commit ff6acbe972.
2022-10-06 07:09:51 +02:00
Stephane Nicoll ff6acbe972 Adapt to deprecations in Spring Framework snapshots 2022-10-05 15:55:33 +02:00
Andy Wilkinson 7c4e46e538 Allow thread dump endpoint to call ThreadMXBean in a native image
Closes gh-31680
2022-10-04 17:09:22 +01:00
Phillip Webb e0b67889a8 Use Stream.toList instead of Stream.collect when possible
Update code to make use of `Stream.toList()` whenever possible.

Closes gh-28177
2022-10-04 00:29:22 -07:00
Andy Wilkinson 3ab36074dc Make management.tracing.enabled are first-class property
This will allow metadata to be generated for it automatically.

Closes gh-31656
2022-10-03 14:28:23 +01:00
Andy Wilkinson 6d4390e034 Simplify ConditionalOnEnabledTracing
Closes gh-32572
2022-10-03 14:26:41 +01:00
Andy Wilkinson 69c8959e6d Remove remnants of references to GlobalKeyValuesProviders
Closes gh-31841
2022-10-03 14:03:15 +01:00
Stephane Nicoll c2b8d3de21 Declare beans that can be instantiated at build-time static
This commit updates the bean factory methods for beans that can be
instantiated at build-time to be static. Doing so makes sure that
the enclosing configuration class does not have to be resolved in
order to create the instance.

Closes gh-32570
2022-10-03 14:36:04 +02:00
Johnny Lim d6cfcd0825 Fix compile errors
Closes gh-32569
2022-10-02 18:38:28 +02:00
Andy Wilkinson 522cb1c0ea Polish deprecation warnings
See gh-32541
2022-09-30 18:51:37 +01:00
Andy Wilkinson dbcb291b7a Polish
See gh-32541
2022-09-30 18:31:01 +01:00
Andy Wilkinson bcb5e84129 Avoid using reflection when creating composite health contributors
Closes gh-32541
2022-09-30 17:03:02 +01:00
Andy Wilkinson 51df7813a5 Remove code deprecated in 2.x and add since and forRemoval attributes
Closes gh-32548
Closes gh-32549
2022-09-30 14:39:05 +01:00
Brian Clozel 5b092f5d80 Polish
See gh-32518
2022-09-30 12:52:22 +02:00
Brian Clozel 8b4a20d6cd Use Observation infrastructure for instrumenting WebClient
As of spring-projects/spring-framework#28341, `WebClient` is
instrumented directly for `Observation`.
This commit removes the custom `ExchangeFilterFunction` that previously
instrumented the client for metrics.

As a result, the relevant tag providers are now deprecated and adapted
as `ObservationConvention` for the time being.

Closes gh-32518
2022-09-30 11:24:35 +02:00
Stephane Nicoll 3702c71fc1 Adapt to Spring AOT changes 2022-09-29 18:55:41 +02:00
Andy Wilkinson 17953eeb33 Merge branch '2.7.x'
Closes gh-32544
2022-09-29 11:41:15 +01:00
Andy Wilkinson 3ef633b096 Merge branch '2.6.x' into 2.7.x
Closes gh-32543
2022-09-29 11:39:42 +01:00
Andy Wilkinson 84a25c7dcf Configure Log4j2 classpath overrides consistently
Closes gh-32537
2022-09-29 11:25:21 +01:00
Andy Wilkinson f10d696c46 Merge branch '2.7.x'
Closes gh-32536
2022-09-29 10:04:45 +01:00
Andy Wilkinson 9f5b7db553 Merge branch '2.6.x' into 2.7.x
Closes gh-32535
2022-09-29 10:04:19 +01:00
Andy Wilkinson be48f37a83 Fix LogbackMetrics auto-config test with Logback and Log4j2 on cp
Closes gh-32533
2022-09-29 10:03:52 +01:00
dreis2211 388134713e Remove unused MockReactiveWebServerFactory
See gh-32526
2022-09-29 09:33:29 +02:00
Andy Wilkinson 0bfa9cd704 Upgrade to Logback 1.4 and SLF4J 2.0
Closes gh-12649
2022-09-28 21:14:08 +01:00
Andy Wilkinson 574242b44f Polish "Break cycles between Zipkin senders and HTTP client observation"
See gh-32528
2022-09-28 20:28:11 +01:00
Marcin Grzejszczak b41ed44b60 Break cycles between Zipkin senders and HTTP client observation
Previously, RestTemplateBuilder and WebClient.Builder beans were used
to create the HTTP client for sending out spans. Those same beans are
also instrumented for observability which results in a cycle.

This commit breaks the cycle by not using the application-web
builders to create the RestTemplate and WebClient's used by the Zipkin
senders. Instead, builders are created inline, with new callbacks
being introduced to allow the user to customize these Zipkin-specific
builders.

See gh-32528
2022-09-28 20:11:44 +01:00
Andy Wilkinson 8c74b62888 Polish "Prefer WebClient to RestTemplate for Zipkin's Sender"
See gh-32529
2022-09-28 19:07:27 +01:00
Marcin Grzejszczak cd3b3d468a Prefer WebClient to RestTemplate for Zipkin's Sender
Previously, a Webclient-based sender was only for reactive web
applications, falling back to a RestTemplate-based sender in all
other cases.

With this commit we now prefer to use WebClient if it is available,
irrespective of the web application type. The assumption is that
if the user has WebClient on the classpath, it's either a reactive
web application, or it's a servlet web application or non-web
application but WebClient is preferred.

See gh-32529
2022-09-28 19:04:30 +01:00
Brian Clozel eac50a8f0c Auto-configure Observation support for RestTemplate
Prior to this commit, Spring Boot would auto-configure a customizer that
instruments `RestTemplate` through a `RestTemplateBuilder`. This would
install a request interceptor that instrumented client exchanges for
producing metrics.

As of spring-projects/spring-framework#28341, the instrumentation is
done at the `RestTemplate` level directly using the `Observation` API.
The `Tag` (now `KeyValue`) extraction, observation name and
instrumentation behavior now lives in the Spring Framework project.

This commit updates the auto-configuration to switch from Boot-specific
Metrics instrumentation to a generic Observation instrumentation.
As a migration path, some configuration properties are deprecated in
favor of the new `management.observations.*` namespace.

Closes gh-32484
2022-09-27 22:19:01 +02:00
Andy Wilkinson 36a4b36ccb Polish "Add support for MDC, Context Propagation (via B3 and W3C), and Baggage"
See gh-32480
2022-09-27 16:47:09 +01:00
Marcin Grzejszczak 52d1436dc6 Add support for MDC, Context Propagation (via B3 and W3C), and Baggage
See gh-32480
2022-09-27 16:47:03 +01:00
Andy Wilkinson 5449397463 Require micrometer-tracing-bridge-otel to auto-configure OTel
Closes gh-32503
2022-09-27 09:10:44 +01:00
Andy Wilkinson 6cc3619675 Require micrometer-tracing-bridge-brave to auto-configure Brave
Closes gh-32502
2022-09-27 08:35:22 +01:00
Vedran Pavic 230f2cda84 Migrate to AuthorizationFilter in Spring Security auto-config
This commit updates Servlet based Spring Security auto-configuration
to use AuthorizationFilter, which is intended to supersede
FilterSecurityInterceptor.

See gh-31255
2022-09-22 13:53:54 +01:00
Scott Frederick 08022ba86e Remove support for locating imports using spring.factories
With this commit, loading `@AutoConfiguration`,
`@ImportAutoConfiguration`, and `@ManagementContextConfiguration`
classes is supported with `.imports` files only. Support for loading
these classes with `spring.factories` is removed.

Closes gh-29699
2022-09-21 17:34:51 -05:00
Scott Frederick f9c341c75a Revert "Generate the AutoConfiguration.imports file from annotations"
This reverts commit da4de7d67d.
2022-09-21 14:50:15 -05:00
Scott Frederick d62d7ca75d Revert "Generate ManagementContextConfiguration.imports file from annotations"
This reverts commit 6b3b0dd3a6.
2022-09-21 14:50:15 -05:00
Andy Wilkinson b084019d34 Reverse the order of tracing and metrics handlers
Closes gh-32463

Co-authored-by: Jonatan Ivanov <jonatan.ivanov@gmail.com>
2022-09-21 19:05:21 +01:00
Andy Wilkinson 78a64d7f61 Allow DefaultMeterObservationHandler to be replaced by user's bean
Closes gh-32462

Co-authored-by: Jonatan Ivanov <jonatan.ivanov@gmail.com>
2022-09-21 19:05:07 +01:00
Andy Wilkinson 5cb68eab1e Remove HotSpot specifics from HeapDumper strategy interface
Closes gh-27533
2022-09-16 12:53:43 +01:00
Stephane Nicoll 84298e3326 Adapt to API change in Spring Framework
See https://github.com/spring-projects/spring-framework/issues/29005
2022-09-12 10:13:03 +02:00
Andy Wilkinson 144fdaa703 Merge branch '2.6.x' into 2.7.x
Closes gh-32283
2022-09-09 15:14:40 +01:00
Andy Wilkinson 78f4242e46 Build with Gradle 7.5 while still supporting Gradle 6.8+
Closes gh-32281
2022-09-09 15:13:43 +01:00
Brian Clozel 89c61e9093 Adapt GlobalObservationConvention imports
See micrometer-metrics/micrometer#3387
2022-09-09 14:30:53 +02:00
Phillip Webb 46be4a3f30 Merge branch '2.7.x' 2022-09-08 19:38:18 -07:00
Phillip Webb e88a682220 Merge branch '2.6.x' into 2.7.x 2022-09-08 19:37:52 -07:00
Phillip Webb 85697ac482 Update copyright year of changed files 2022-09-08 19:36:59 -07:00
Jonatan Ivanov 13a2ea9194 Build against Micrometer 1.10.0-M5 and Tracing 1.0.0-M8 snapshots
See gh-32048

Co-authored-by: Marcin Grzejszczak <mgrzejszczak@vmware.com>
2022-09-06 20:15:51 +01:00
Stephane Nicoll e5d0e34268 Adapt to recent changes in Spring Framework
See https://github.com/spring-projects/spring-framework/issues/29082
See https://github.com/spring-projects/spring-framework/issues/28877
2022-09-05 18:23:05 +02:00
Scott Frederick 6b3b0dd3a6 Generate ManagementContextConfiguration.imports file from annotations
This commit adds the
`ManagementContextConfigurationImportsAnnotationProcessor` to
the `spring-boot-autoconfigure-processor` annotation processor
module.

Closes gh-32222
2022-09-02 16:27:59 -05:00
Scott Frederick da4de7d67d Generate the AutoConfiguration.imports file from annotations
This commit adds the `AutoConfigurationImportsAnnotationProcessor` to
the `spring-boot-autoconfigure-processor` annotation processor
module. When added to a project build, the annotation processor will
generate the
`org.springframework.boot.autoconfigure.AutoConfiguration.imports`
file automatically from `@AutoConfiguration`-annotated classes. It
also applies the annotation processor to the Spring Boot build.

Closes gh-31228
2022-09-02 15:10:22 -05:00
Andy Wilkinson 795ea289db Adapt to BindingReflectionHintsRegistrar moving package 2022-09-02 19:46:02 +01:00
Andy Wilkinson cf8e84d406 Adapt to BindingReflectionHintsRegistrar moving into spring-core 2022-09-02 17:34:29 +01:00
Andy Wilkinson d6e9a03136 Adapt to synthesized annotation changes in Framework 2022-09-02 17:01:51 +01:00
Phillip Webb 44f1949c5e Polish hint API calls 2022-09-01 19:43:43 -07:00
Madhura Bhave 47effdcade Support role-based sanitization for actuator endpoints
Closes gh-32156
2022-08-24 16:03:58 -07:00
Stephane Nicoll 24a52aa66d Annotate actuator internal infrastructure with @Reflective
This commit simplifies the registration of hints for the infrastructure
of the Actuator that is invoked via reflection.
2022-08-17 17:25:06 +02:00
Stephane Nicoll e6977777cc Merge branch '2.7.x'
Closes gh-32100
2022-08-17 09:10:13 +02:00
Stephane Nicoll ca63a6e9ad Merge branch '2.6.x' into 2.7.x
Closes gh-32099
2022-08-17 09:10:02 +02:00
Stephane Nicoll 191593cf15 Review Git contribution documentation
Closes gh-31904
2022-08-17 08:58:56 +02:00
Madhura Bhave cea6492c4a Align default JMX and WEB endpoint exposures
Closes gh-32005
2022-08-16 14:29:08 -07:00
Stephane Nicoll 888ccfea2d Adapt to changes in Spring Framework 2022-08-16 16:02:00 +02:00
Andy Wilkinson ba93e6c0ed Restore support for Jersey
Closes gh-28637
2022-08-08 15:45:20 +01:00
Andy Wilkinson fb2f7c1e38 Fix test to create correct type of child context
Closes gh-32002
2022-08-08 14:18:40 +01:00
Madhura Bhave 0991bd3983 Harmonize data configuration
Any classes that rely on Spring Data being on the classpath
have been moved under a data package.

Certain configuration properties have also been updated to
accurately reflect whether Spring Data is required for the
auto-configuration to work.

Closes gh-11574
2022-08-05 13:32:25 -07:00
Stephane Nicoll 1af5994d8f Adapt to API change in Spring Framework
See https://github.com/spring-projects/spring-framework/issues/28927
2022-08-05 10:39:36 +02:00
Andy Wilkinson 2f0dfc341c Merge branch '2.7.x'
Closes gh-31972
2022-08-03 15:20:34 +01:00
Andy Wilkinson 700460c322 Merge branch '2.6.x' into 2.7.x
Closes gh-31971
2022-08-03 14:58:07 +01:00
Andy Wilkinson fa73b73898 Fail build on missing configuration property descriptions
Closes gh-31916
2022-08-03 14:45:42 +01:00
Johnny Lim 6a4681baf5 Polish
See gh-31948
2022-08-02 15:14:23 +02:00
Moritz Halbritter eaf8683e8d Fix timeunit in ZipkinConfigurations to milliseconds instead of seconds
Closes gh-31957
2022-08-02 13:40:00 +02:00
Moritz Halbritter 767631e2cc Fix bean chicken and egg problem with WavefrontSender
Closes gh-31954
2022-08-02 11:19:24 +02:00
Brian Clozel 38f1bc9793 Reinstate Spring for GraphQL auto-configuration
This commit adds the Spring for GraphQL auto-configuration back
into Spring Boot 3.0, now that a 1.1.0 release is scheduled with the
required baseline. This release also needs GraphQL Java 19.0 as a
baseline.

Closes gh-31809
2022-08-01 14:33:25 +02:00
Madhura Bhave a82b95c955 Merge branch '2.7.x' into main
Closes gh-31927
2022-07-29 11:33:41 -07:00
Madhura Bhave 2884ec81e9 Merge branch '2.6.x' into 2.7.x
Closes gh-31926
2022-07-29 11:33:17 -07:00
Madhura Bhave cc15eb0b96 Configure existing probes at additional path when necessary
Fixes gh-30612
2022-07-29 11:31:19 -07:00
Stephane Nicoll db0e008c01 Register composed annotations explicitly
Closes gh-31919
2022-07-29 16:41:50 +02:00
Phillip Webb 22144987e9 Update copyright year of changed files 2022-07-29 12:10:03 +01:00
Phillip Webb e08c16dfd6 Polish 2022-07-29 12:10:02 +01:00
Phillip Webb 57e967576e Adapt to upstream Spring Framework AOT changes 2022-07-27 21:44:18 +01:00
Stephane Nicoll fdb1ee5f97 Adapt to deprecations in Spring Framework
See https://github.com/spring-projects/spring-framework/issues/27954
See gh-29699
2022-07-27 18:18:09 +02:00
Stephane Nicoll c413f9adbe Merge branch '2.7.x'
Closes gh-31884
2022-07-27 09:23:39 +02:00
Stephane Nicoll 53a652ec65 Merge branch '2.6.x' into 2.7.x
Closes gh-31883
2022-07-27 09:23:05 +02:00
Adrian Bob aad9c8906a Disable auto-detection in tests that start Hazelcast
This commit updates test configurations to disable auto-detection of
Hazelcast instances.

See gh-31863
2022-07-27 08:16:48 +02:00
Stephane Nicoll 782e3f75b6 Polish Hazelcast configuration
This commit updates the XSD to 4.2 and removes the "tcp-ip" network
option as it is disabled by default.

See gh-31863
2022-07-27 08:15:53 +02:00
Stephane Nicoll 193c1d7acf Adapt to changes in DefaultGenerationContext
See https://github.com/spring-projects/spring-framework/issues/28877
2022-07-26 18:06:46 +02:00
Phillip Webb 7377d85096 Merge branch '2.7.x'
Closes gh-31866
2022-07-26 12:18:14 +01:00
Phillip Webb a4ef6a7c5c Merge branch '2.6.x' into 2.7.x
Closes gh-31865
2022-07-26 12:13:16 +01:00
Phillip Webb f8412847dc Update copyright year for "Fix typos in code and documentation"
See gh-31734
2022-07-26 12:08:30 +01:00
Marc Wrobel dbfc6bded4 Fix typos in code and documentation
See gh-31734
2022-07-26 12:08:07 +01:00
Phillip Webb b93dbd56e8 Merge branch '2.7.x' 2022-07-26 10:51:17 +01:00
Phillip Webb 3931e82841 Merge branch '2.6.x' into 2.7.x 2022-07-26 10:50:42 +01:00
Phillip Webb 4bcec6e0ee Polish 2022-07-26 10:50:01 +01:00
Olga Maciaszek-Sharma 57dc274284 Switch to Spring Framework SNAPSHOTs
Switch to Spring Framework SNAPSHOTs and adapt to updated APIs.

See gh-31834
2022-07-21 13:42:48 +01:00
Andy Wilkinson de672f4330 Merge branch '2.7.x'
Closes gh-31819
2022-07-20 21:02:06 +01:00
Andy Wilkinson 2e98cafcca Merge branch '2.6.x' into 2.7.x
Closes gh-31818
2022-07-20 21:01:47 +01:00
Andy Wilkinson ab2b04fafd Find health contributors in ancestor contexts in non-reactive apps
Previously, health contributors in a non-reative app were found by
retrieving them from the application context rather than via
dependency injection. This results in only contributors from the
current context being found, with contributors in ancestor contexts
ignored.

This commit moves to injection of the contributors, aligning the
behaviour with that of a reactive application.

Closes gh-27308
2022-07-20 20:52:02 +01:00
Vedran Pavic f1bf80f5e1 Upgrade to Flyway 9.0.1
See gh-31723
2022-07-20 15:44:00 +01:00
Andy Wilkinson 18d3d4de5d Merge branch '2.7.x'
Closes gh-31805
2022-07-20 10:17:56 +01:00
Andy Wilkinson 10e19d504a Merge branch '2.6.x' into 2.7.x
Closes gh-31804
2022-07-20 10:17:39 +01:00
Andy Wilkinson 628c2cd0b1 Ensure JMX endpoints are uniquely named in a context hierarchy
Closes gh-31718
2022-07-20 10:15:52 +01:00
Moritz Halbritter 5030cfedcc Revert "Make MeterRegistry lazy in TimerObservationHandlerObservationRegistryCustomizer"
This reverts commit 04391275c1.
2022-07-19 16:33:35 +02:00
Andy Wilkinson 5c057a2730 Auto-configure the new Elasticsearch clients
This commit introduces auto-configuration for the new Elasticsearch
clients that are based upon their new Java client. The new Java
client builds on top of their existing low-level REST client,
replacing the high-level REST client which has been deprecated.
As part of introducing support for the new Elasticsearch client,
the auto-configuration for the templates (both imperative and
reactive) provided by Spring Data has also been updated to use the
new templates that build upon the new Java client.

As part of these changes, support for the high-level REST client and
the old Spring Data Elasticsearch templates has been removed. One
significant change is that the new reactive template is no longer
based on WebClient. As a result, the WebClient-specific configuration
property has been removed.

Closes gh-30647
Closes gh-28597
Closes gh-31755
2022-07-19 15:26:42 +01:00
Stephane Nicoll 51cba6ec72 Polish "Add AOT support for actuator"
See gh-31671
2022-07-19 13:02:49 +02:00
Moritz Halbritter 584b7d1343 Add AOT support for actuator
Mainly adds reflection hints for the actuator infrastructure.
Also adds the OperationReflectiveProcessor, which registers the
@ReadMethod, @DeleteMethod and @WriteMethod annotated methods for
reflection and adds reflection hints for method return types.

See gh-31671
2022-07-19 13:02:48 +02:00
Andy Wilkinson 3405a54f9e Exclude Jetty toolchain dependencies in favor of official API artifacts
Closes gh-31720
2022-07-14 13:55:26 +01:00
Madhura Bhave 7c56a45d3e Drop support for String path matching for MVC endpoints
Closes gh-31700
2022-07-13 14:03:32 -07:00
Stephane Nicoll 9cace34a19 Merge branch '2.7.x'
Closes gh-31705
2022-07-13 13:50:36 +02:00
Stephane Nicoll b8647551cb Merge branch '2.6.x' into 2.7.x
Closes gh-31704
2022-07-13 13:50:17 +02:00
Johnny Lim b17cb9b92b Polish gh-31231
See gh-31540
2022-07-13 13:49:13 +02:00
Madhura Bhave d66e108703 Revert actuator changes related to path pattern parsing
See gh-31547
2022-07-12 15:25:41 -07:00
Madhura Bhave 7954f5e566 Adapt to change in default strategy for URL path matching in Spring MVC
Closes gh-31547
2022-07-12 09:59:44 -07:00
Andy Wilkinson 08d37b7fb6 Merge branch '2.7.x'
Closes gh-31694
2022-07-12 14:29:49 +01:00
Andy Wilkinson 1c2b0ae705 Merge branch '2.6.x' into 2.7.x
Closes gh-31693
2022-07-12 14:28:10 +01:00
Andy Wilkinson 7c55639167 Depend on log4j-api directly rather than via Elastic's transitives
Closes gh-31692
2022-07-12 14:27:56 +01:00
Andy Wilkinson 99fabfa934 Revert "Remove spring-aspects dependency following fix in Data JPA"
This reverts commit cd6c7cd6c9.

The fix in Spring Data JPA is incomplete so we need to reinstate the
workaround.
2022-07-12 10:46:06 +01:00
Andy Wilkinson cd6c7cd6c9 Remove spring-aspects dependency following fix in Data JPA
The recent changes in Spring Data JPA [1] mean that we no longer need
a dependency on spring-aspects for Data JPA's hint registration to
succeed.

5821272112
2022-07-12 10:08:32 +01:00
Andy Wilkinson 9b113272d1 Reinstate support for Hibernate Metrics
Closes gh-31675
2022-07-12 09:36:54 +01:00
Oliver Drotbohm b10c57551c Upgrade to Hibernate 6.1.1.Final
This commit makes the following potentially breaking changes:

- Dependency management for modules that do not exist in Hibernate
  6.1 has been removed.
- Hibernate's modules are now in the org.hibernate.orm group. Users
  not using the starter or using modules that are not in the starter
  will have to update their build configuration accordingly.
- spring.jpa.hibernate.use-new-id-generator-mappings has been removed
  as Hibernate no longer supports switching back to the old ID
  generator mappings.

Co-authored-by: Andy Wilkinson <wilkinsona@vmware.com>

Closes gh-31674
2022-07-12 09:36:34 +01:00
Andy Wilkinson acd8d05315 Update copyright date of changed file 2022-07-08 18:13:45 +01:00
Andy Wilkinson efc5391496 Adapt to deprecations in Framework's scheduling APIs
See gh-31241
2022-07-08 17:53:55 +01:00
Moritz Halbritter 8639552405 Start building against Micrometer Tracing 1.0.0-M6 snapshots
See gh-31657
2022-07-08 14:01:13 +02:00
Andy Wilkinson 2821629d54 Remove unchecked raw casts that are now redundant
Closes gh-31326
2022-07-08 12:52:59 +01:00
Andy Wilkinson 7f00378eaf Polish "Start building against Spring Data 2022.0.0-M5 snapshots"
See gh-31582
2022-07-07 16:32:13 +01:00
Andy Wilkinson 19b7e012f3 Upgrade to Prometheus Client 0.16.0
Closes gh-31597
2022-07-07 14:34:17 +01:00
Andy Wilkinson e9136e023b Adapt to trailing slashes no longer being matched by default
See gh-31563
2022-07-07 14:16:20 +01:00
Moritz Halbritter 04391275c1 Make MeterRegistry lazy in TimerObservationHandlerObservationRegistryCustomizer
Closes gh-31580
2022-07-06 14:18:53 +02:00
dreis2211 458f989cf3 Use switch expressions where appropriate
See gh-31527
2022-06-24 16:19:28 +01:00
Andy Wilkinson 631b1e0d76 Merge branch '2.7.x'
Closes gh-31526
2022-06-24 13:10:10 +01:00
Andy Wilkinson 1e08f545d0 Merge branch '2.6.x' into 2.7.x
Closes gh-31525
2022-06-24 13:05:06 +01:00
Andy Wilkinson f49b16c645 Upgrade to Spring Java Format 0.0.34
Closes gh-31524
2022-06-24 12:57:52 +01:00
Stephane Nicoll fe39598e81 Adapt to latest API change in Spring Framework
See https://github.com/spring-projects/spring-framework/issues/28585
2022-06-23 16:30:34 +02:00
Phillip Webb b85469a5a5 Merge branch '2.7.x'
Closes gh-31502
2022-06-22 16:33:42 -07:00
Phillip Webb d64f601dfd Merge branch '2.6.x' into 2.7.x
Closes gh-31501
2022-06-22 16:31:52 -07:00
Phillip Webb aed4c47adb Polish CompositeHandlerExceptionResolver
See gh-31495
2022-06-22 16:23:38 -07:00
Guirong Hu 3592292e4b Use ExceptionHandler when Spring MVC uses a different management port
Update `CompositeHandlerExceptionResolver` to search for beans in
all contexts. Note that `BeanFactoryUtils.beansOfTypeIncludingAncestors`
cannot not be used since we need to pick up all beans, even if they
have the same name.

See gh-31495
2022-06-22 16:13:26 -07:00
Moritz Halbritter bb6c56e5f0 Polish "Add WebClient based sender for Zipkin"
See gh-30792
2022-06-22 10:25:18 +02:00
StefanBratanov 12037bd131 Add WebClient based sender for Zipkin
See gh-30792
2022-06-22 09:58:05 +02:00
Moritz Halbritter bc931cb32c Revert "Polish EndpointRequest"
This reverts commit 35997a30a3.
2022-06-21 15:43:57 +02:00
Moritz Halbritter 35997a30a3 Polish EndpointRequest
- Remove redundant cast
2022-06-21 14:30:05 +02:00
Moritz Halbritter c8c552d95b Polish ObservationAutoConfiguration
- Use a better name for the "only metrics, no tracing" case
2022-06-21 11:32:27 +02:00
Moritz Halbritter 06cdc91c85 Polish ObservationAutoConfiguration
- Use a better name for the "only metrics, no tracing" case
- Use more concrete return types
2022-06-21 11:31:11 +02:00
dreis2211 5db04da275 Use pattern matching for instanceof where appropriate
See gh-31475
2022-06-20 17:55:36 +01:00
Johnny Lim 43c2f1c03c Polish AutoConfigureObservability changes
See gh-31457
2022-06-20 07:38:22 +02:00
Johnny Lim aab59c5f2e Static-import Mockito.mock()
See gh-31443
2022-06-19 10:31:28 +02:00
Phillip Webb 657fa3e64e Merge branch '2.7.x'
Closes gh-31409
2022-06-16 15:36:29 -07:00
Phillip Webb 7c91ebb1b0 Merge branch '2.6.x' into 2.7.x
Closes gh-31408
2022-06-16 15:36:00 -07:00
Phillip Webb ae6311ddda Prevent Logback from accidentally being used in Log4J2LoggingSystemTests
Update `Log4J2LoggingSystemTests` to exclude Logback and include
'log4j-slf4j-impl'. The `ModifiedClassPathClassLoader` has also been
updated so that it no longer automatically excludes `log4j` artifacts,
instead we now use `@ClassPathExclusions` on the relevant tests.

Fixes gh-19365
2022-06-16 15:35:32 -07:00
Phillip Webb 85dcbf6100 Merge branch '2.7.x'
Closes gh-31385
2022-06-14 09:38:36 -07:00
Phillip Webb e0947459b6 Merge branch '2.6.x' into 2.7.x
Closes gh-31384
2022-06-14 09:38:05 -07:00
Phillip Webb 9f8a262e6b Log a warning when a health indicator takes too long to run
Update `HealthEndpointSupport` so that it logs a warning if a health
indicator takes too long to respond.

Fixes gh-31231
2022-06-14 09:32:07 -07:00
Stephane Nicoll b536b209ab Refine assertions on exception messages 2022-06-14 18:20:27 +02:00
Moritz Halbritter 42e8f65b80 Move @ConditionalOnClass from methods to inner classes
Closes gh-31353
2022-06-13 13:41:58 +02:00
Stephane Nicoll 063e56dbff Polish 2022-06-13 09:44:02 +02:00
Andy Wilkinson d4be484d27 Upgrade to AssertJ 3.23.1
Closes gh-31331
2022-06-10 13:44:21 +01:00
Moritz Halbritter 3799170c4d Disable metrics and tracing in web endpoints integration tests
See gh-31308
2022-06-10 14:25:12 +02:00
Moritz Halbritter 8fab9f290c Back off tracing auto-configurations if tracing is disabled
See gh-31308
2022-06-10 14:25:12 +02:00
Moritz Halbritter b019ff6102 Wavefront sender configuration is no longer an auto-configuration
It's now a regular configuration class which is imported from
the Wavefront metrics and tracing auto-configurations
2022-06-10 14:25:12 +02:00
Moritz Halbritter 943e9033c0 Add @ConditionalOnEnabledTracing condition
See gh-31308
2022-06-10 14:25:12 +02:00
Moritz Halbritter 41e9867bc4 Register all ObservationHandler, regardless which context they use
Closes #31272
2022-06-10 10:12:35 +02:00
Moritz Halbritter d1647cf68c Don't back off on user-supplied SpanHandlers
Instead the auto-configuration now backs off only on ZipkinSpanHandler.

Closes gh-31273
2022-06-09 15:17:14 +02:00
Andy Wilkinson 91bb5aa222 Move auto-config of ReactiveElasticClient to elasticsearch pkg
Closes gh-28068
2022-06-09 11:42:09 +01:00
Phillip Webb c56783064d Support management contexts with AOT
Refactor child management configuration and add AOT generation support.
A new `ChildManagementContextInitializer` class now performs the child
context initialization and also handles AOT processing concerns.

Closes gh-31163
2022-06-08 19:24:46 -07:00
Andy Wilkinson 46c262d3cc Merge branch '2.7.x'
Closes gh-31283
2022-06-08 19:24:49 +01:00
Andy Wilkinson 12eb7a8795 Merge branch '2.6.x' into 2.7.x
Closes gh-31282
2022-06-08 19:24:07 +01:00
Andy Wilkinson a651061e2c Remove SpringApplicationHierarchyTests
Closes gh-31281
2022-06-08 19:23:26 +01:00
izeye f720b65dfc Auto-configure JvmCompilationMetrics
See gh-31151
2022-05-27 10:18:13 +01:00
Andy Wilkinson 4bb5ba2bd0 Merge branch '2.7.x' 2022-05-26 18:26:52 +01:00
Andy Wilkinson 935d1264e0 Merge branch '2.6.x' into 2.7.x 2022-05-26 18:13:08 +01:00
Andy Wilkinson 3d203d0215 Polish 2022-05-26 17:30:39 +01:00
Andy Wilkinson 5dfa5adb75 Merge branch '2.7.x'
Closes gh-31178
2022-05-26 15:54:58 +01:00
Andy Wilkinson 455ee0ce22 Merge branch '2.6.x' into 2.7.x
Closes gh-31177
2022-05-26 15:53:38 +01:00
Andy Wilkinson ee45fd2fc8 Remove redundant throws declarations from internal APIs
Closes gh-31176
2022-05-26 15:47:35 +01:00
Andy Wilkinson b3a4982f31 Merge branch '2.6.x' into 2.7.x
Closes gh-31174
2022-05-26 14:01:23 +01:00
Andy Wilkinson cbf42dea14 Update deprecation messages to change removal version from 2.8 to 3.0
Closes gh-30903
2022-05-26 13:59:03 +01:00
Eddú Meléndez 154c84ffe2 Add package-info for o.s.b.a.a.metrics.graphql
See gh-31140
2022-05-25 13:30:29 +01:00
Andy Wilkinson f9db6ad237 Merge branch '2.7.x'
Closes gh-31152
2022-05-23 12:51:13 +01:00
Andy Wilkinson 24dc525127 Fix conditions on auto-configured WebMvcMetricsFilter
Closes gh-31150
2022-05-23 12:50:49 +01:00
Andy Wilkinson 96c2d08fc4 Remove support for Solr as it is not compatible with Jetty 11
Closes gh-31054
2022-05-18 11:33:55 +01:00
Phillip Webb f8a41d34aa Merge branch '2.7.x' 2022-05-17 22:22:08 -07:00
Stephane Nicoll cbf415b850 Merge branch '2.7.x' 2022-05-16 16:37:31 +02:00
Stephane Nicoll 285378e4f9 Merge branch '2.6.x' into 2.7.x
Closes gh-31059
2022-05-16 16:37:21 +02:00
Stephane Nicoll 18129a5938 Merge branch '2.5.x' into 2.6.x
Closes gh-31058
2022-05-16 16:37:07 +02:00
Stephane Nicoll 22d187a38c Polish "Add missing configuration properties for Statsd"
See gh-30898
2022-05-16 16:33:22 +02:00
izeye d90ef6afb3 Add missing configuration properties for Statsd
See gh-30898
2022-05-16 16:28:50 +02:00
izeye 3c7465cb35 Polish OtlpPropertiesConfigAdapterTests
See gh-31057
2022-05-16 16:09:34 +02:00
Andy Wilkinson ed705cc78e Polish 2022-05-12 12:59:12 +01:00
Andy Wilkinson a496cb9298 Merge branch '2.7.x' 2022-05-12 12:52:46 +01:00
Andy Wilkinson 2669f8c343 Merge branch '2.6.x' into 2.7.x
Closes gh-30997
2022-05-12 12:47:52 +01:00
Andy Wilkinson 655ceefead Merge branch '2.5.x' into 2.6.x
Closes gh-30996
2022-05-12 12:47:38 +01:00
Andy Wilkinson 3f6fcac683 Polish "Extend documentation on Datadog metrics"
See gh-30879
2022-05-12 12:36:50 +01:00
Denis Washington 09db7e4001 Extend documentation on Datadog metrics
- Document that an application key must be set to publish metadata
  for the exported metrics.

- Point out that using a non-US Datadog site (e.g., EU) requires
  changing the `uri` property.

See gh-30879
2022-05-12 12:36:18 +01:00
Andy Wilkinson 48c948973d Polish 2022-05-12 12:12:22 +01:00
Andy Wilkinson d0e55643b1 Polish
Closes gh-30993
2022-05-12 12:11:51 +01:00
Andy Wilkinson c2a3652709 Merge branch '2.7.x' 2022-05-12 11:53:46 +01:00
Andy Wilkinson 7e88daf288 Update messages for APIs deprecated in 2.7
In all likelihood there will not be a 2.9 release so this commit
updates the message for deprecations made in 2.7 to indicate that
removal will not occur until 3.0.

See gh-30903
2022-05-12 11:12:09 +01:00
Andy Wilkinson 26405528c6 Polish "Add resourceAttributes property to OtlpProperties"
See gh-30984
2022-05-12 10:12:53 +01:00
Eddú Meléndez e3fce8439a Add resourceAttributes property to OtlpProperties
See gh-30984
2022-05-12 09:37:56 +01:00
Andy Wilkinson 541ab69aff Merge branch '2.7.x' 2022-05-03 15:18:20 +01:00
Andy Wilkinson 4cd850cfc0 Merge branch '2.6.x' into 2.7.x
Closes gh-30851
2022-05-03 15:17:13 +01:00
Andy Wilkinson fa327a783d Merge branch '2.5.x' into 2.6.x
Closes gh-30850
2022-05-03 15:14:00 +01:00
Andy Wilkinson 4fd2e0c916 Polish "Fix typos"
See gh-30773
2022-05-03 14:09:53 +01:00
Andy Wilkinson f6d24dc1a8 Fix typos
See gh-30773
2022-05-03 14:09:37 +01:00
Eddú Meléndez f7a7e8cb89 Add auto-configuration for OtlpMeterRegistry
See gh-30825
2022-05-03 13:18:07 +01:00
izeye 9f2114170e Apply key values rename consistently
See gh-30837
2022-05-03 12:29:52 +01:00
izeye 77c3b6c899 Polish Micrometer tracing changes
See gh-30833
2022-05-03 11:39:31 +01:00
Andy Wilkinson 2cebbe10ce Merge branch '2.7.x' 2022-05-03 11:29:38 +01:00
Andy Wilkinson 61cd05f74b Merge branch '2.6.x' into 2.7.x
Closes gh-30842
2022-05-03 11:29:03 +01:00
Andy Wilkinson f1b5f36af8 Merge branch '2.5.x' into 2.6.x
Closes gh-30841
2022-05-03 11:28:53 +01:00
Andy Wilkinson f8e5a534a6 Polish "Polish InfluxMetricsExportAutoConfiguration"
See gh-30824
2022-05-03 09:50:51 +01:00
Eddú Meléndez b0d5364efa Polish InfluxMetricsExportAutoConfiguration
See gh-30824
2022-05-03 09:50:06 +01:00
Eddú Meléndez 6a65aa4a23 Auto-configure Micrometer's JvmInfoMetrics
See gh-30832
2022-04-29 11:04:50 +01:00
Andy Wilkinson 6d15e6d4ef Adapt to breaking API changes in latest Micrometer snapshots
See gh-30800
2022-04-27 10:33:25 +01:00
Moritz Halbritter 85a4c94dea Merge branch '2.7.x' 2022-04-25 15:32:08 +02:00
Moritz Halbritter b406971094 Remove hyphen from asserting-party
spring.security.saml2.relyingparty.registration.*.asserting-party.* is
now named spring.security.saml2.relyingparty.registration.*.assertingparty.*

Closes gh-30785
2022-04-25 15:26:38 +02:00
Moritz Halbritter afdb651b04 Auto-configure TracingObservationHandler for HTTP server and clients
- Auto-configures HttpServerTracingObservationHandler and
  HttpClientTracingObservationHandler into Micrometer Tracing. Both
  handlers are ordered before the DefaultTracingObservationHandler,
  which is only used as a fallback.
- The HttpServerHandler and HttpClientHandler implementations are
  auto-configured in the Brave and OpenTelemetry auto-configurations.

Closes gh-30784
2022-04-25 14:33:09 +02:00
Phillip Webb c7374fd415 Update copyright year of changed files 2022-04-20 15:30:20 -07:00
Phillip Webb 7a6ca8ce25 Merge branch '2.7.x' 2022-04-20 15:30:01 -07:00
Phillip Webb dd5696b59b Update copyright year of changed files 2022-04-20 15:26:30 -07:00
Phillip Webb 36f1249fc6 Polish 2022-04-20 15:26:15 -07:00
Moritz Halbritter bb4bccde6c Remove deprecated 'identityprovider' property
Closes gh-30751
2022-04-20 09:11:56 +02:00
Moritz Halbritter 1950d06585 Merge branch '2.7.x' 2022-04-20 08:26:35 +02:00
Moritz Halbritter 6c400daa48 Rename 'identityprovider' property to 'asserting-party'
Rename spring.security.saml2.relyingparty.registration.*.identity-provider.*
to spring.security.saml2.relyingparty.registration.*.asserting-party.*

The old property names are still supported, but will lead to a warning
in the logs.

Closes gh-30642
2022-04-20 08:25:58 +02:00
Stephane Nicoll 2d663f2e94 Upgrade to Spring Data 2021.2.0-RC1
Closes gh-30610
2022-04-20 08:05:15 +02:00
Stephane Nicoll b41d4d4f2a Merge branch '2.7.x' 2022-04-19 09:45:42 +02:00
Stephane Nicoll 69045e4eaf Polish "Allow disabling the Dynatrace instruments"
See gh-30637
2022-04-19 09:43:05 +02:00
Georg Pirklbauer 7a05faf079 Allow disabling the Dynatrace instruments
Since Micrometer version 1.9.0, the Dynatrace registry uses specialized
instruments by default, which ensures data is exported in an optimal
format. By using this new flag, users can switch back to the previous
behavior, which uses the original instruments from Micrometer.

See gh-30637
2022-04-19 09:38:37 +02:00
Stephane Nicoll 8c68b33240 Polish "Start building against Micrometer 1.10.0 snapshots"
See gh-30693
2022-04-15 15:59:24 +02:00
Marcin Grzejszczak 87991d93a5 Start building against Micrometer 1.10.0 snapshots
See gh-30693
2022-04-15 14:16:16 +02:00
Moritz Halbritter 3860eb211a Implement auto-configurations for Brave and OpenTelemetry
- Configure Zipkin
- Configure Wavefront
- Configure Brave
- Configure OpenTelemetry
- Configure Micrometer Tracing bridges for OpenTelemetry and Brave
- Create the ObservationHandler for tracing with Micrometer

Closes gh-30156
2022-04-14 09:14:44 +02:00
Andy Wilkinson 3d5086a42d Merge branch '2.7.x' 2022-04-13 19:24:47 +01:00
Andy Wilkinson ff40c8b6f5 Use MeterBinders to bind DataSource metrics
Closes gh-30282
2022-04-13 19:24:06 +01:00
Moritz Halbritter 2c42be9392 Merge branch '2.7.x' 2022-04-13 15:00:27 +02:00
Moritz Halbritter 6c04241ad6 Merge branch '2.6.x' into 2.7.x
Closes gh-30652
2022-04-13 15:00:14 +02:00
Moritz Halbritter 9e98ccd8ab Merge branch '2.5.x' into 2.6.x
Closes gh-30651
2022-04-13 14:59:59 +02:00
Moritz Halbritter dfc0f21932 Fix language in WavefrontProperties
Closes gh-30649
2022-04-13 14:59:48 +02:00
Andy Wilkinson fe46392144 Merge branch '2.7.x' 2022-04-13 10:04:02 +01:00