Commit Graph

1879 Commits (df364987dfb4541a1acd5f32dabb7a6c69f96334)

Author SHA1 Message Date
Johnny Lim 73fd760137 Polish HTTP client observability changes
See gh-32484
See gh-32518

Closes gh-32636
2 years ago
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
2 years ago
Brian Clozel 3e6ad67f16 Switch to Micrometer 1.10.0-SNAPSHOT
See gh-32598
2 years ago
Stephane Nicoll d106fc266a Revert "Adapt to deprecations in Spring Framework snapshots"
This reverts commit ff6acbe972.
2 years ago
Stephane Nicoll ff6acbe972 Adapt to deprecations in Spring Framework snapshots 2 years ago
Andy Wilkinson 7c4e46e538 Allow thread dump endpoint to call ThreadMXBean in a native image
Closes gh-31680
2 years ago
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
2 years ago
Andy Wilkinson 3ab36074dc Make management.tracing.enabled are first-class property
This will allow metadata to be generated for it automatically.

Closes gh-31656
2 years ago
Andy Wilkinson 6d4390e034 Simplify ConditionalOnEnabledTracing
Closes gh-32572
2 years ago
Andy Wilkinson 69c8959e6d Remove remnants of references to GlobalKeyValuesProviders
Closes gh-31841
2 years ago
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
2 years ago
Johnny Lim d6cfcd0825 Fix compile errors
Closes gh-32569
2 years ago
Andy Wilkinson 522cb1c0ea Polish deprecation warnings
See gh-32541
2 years ago
Andy Wilkinson dbcb291b7a Polish
See gh-32541
2 years ago
Andy Wilkinson bcb5e84129 Avoid using reflection when creating composite health contributors
Closes gh-32541
2 years ago
Andy Wilkinson 51df7813a5 Remove code deprecated in 2.x and add since and forRemoval attributes
Closes gh-32548
Closes gh-32549
2 years ago
Brian Clozel 5b092f5d80 Polish
See gh-32518
2 years ago
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
2 years ago
Stephane Nicoll 3702c71fc1 Adapt to Spring AOT changes 2 years ago
Andy Wilkinson 17953eeb33 Merge branch '2.7.x'
Closes gh-32544
2 years ago
Andy Wilkinson 3ef633b096 Merge branch '2.6.x' into 2.7.x
Closes gh-32543
2 years ago
Andy Wilkinson 84a25c7dcf Configure Log4j2 classpath overrides consistently
Closes gh-32537
2 years ago
Andy Wilkinson f10d696c46 Merge branch '2.7.x'
Closes gh-32536
2 years ago
Andy Wilkinson 9f5b7db553 Merge branch '2.6.x' into 2.7.x
Closes gh-32535
2 years ago
Andy Wilkinson be48f37a83 Fix LogbackMetrics auto-config test with Logback and Log4j2 on cp
Closes gh-32533
2 years ago
dreis2211 388134713e Remove unused MockReactiveWebServerFactory
See gh-32526
2 years ago
Andy Wilkinson 0bfa9cd704 Upgrade to Logback 1.4 and SLF4J 2.0
Closes gh-12649
2 years ago
Andy Wilkinson 574242b44f Polish "Break cycles between Zipkin senders and HTTP client observation"
See gh-32528
2 years ago
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
2 years ago
Andy Wilkinson 8c74b62888 Polish "Prefer WebClient to RestTemplate for Zipkin's Sender"
See gh-32529
2 years ago
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
2 years ago
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
2 years ago
Andy Wilkinson 36a4b36ccb Polish "Add support for MDC, Context Propagation (via B3 and W3C), and Baggage"
See gh-32480
2 years ago
Marcin Grzejszczak 52d1436dc6 Add support for MDC, Context Propagation (via B3 and W3C), and Baggage
See gh-32480
2 years ago
Andy Wilkinson 5449397463 Require micrometer-tracing-bridge-otel to auto-configure OTel
Closes gh-32503
2 years ago
Andy Wilkinson 6cc3619675 Require micrometer-tracing-bridge-brave to auto-configure Brave
Closes gh-32502
2 years ago
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
2 years ago
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
2 years ago
Scott Frederick f9c341c75a Revert "Generate the AutoConfiguration.imports file from annotations"
This reverts commit da4de7d67d.
2 years ago
Scott Frederick d62d7ca75d Revert "Generate ManagementContextConfiguration.imports file from annotations"
This reverts commit 6b3b0dd3a6.
2 years ago
Andy Wilkinson b084019d34 Reverse the order of tracing and metrics handlers
Closes gh-32463

Co-authored-by: Jonatan Ivanov <jonatan.ivanov@gmail.com>
2 years ago
Andy Wilkinson 78a64d7f61 Allow DefaultMeterObservationHandler to be replaced by user's bean
Closes gh-32462

Co-authored-by: Jonatan Ivanov <jonatan.ivanov@gmail.com>
2 years ago
Andy Wilkinson 5cb68eab1e Remove HotSpot specifics from HeapDumper strategy interface
Closes gh-27533
2 years ago
Stephane Nicoll 84298e3326 Adapt to API change in Spring Framework
See https://github.com/spring-projects/spring-framework/issues/29005
2 years ago
Andy Wilkinson 144fdaa703 Merge branch '2.6.x' into 2.7.x
Closes gh-32283
2 years ago
Andy Wilkinson 78f4242e46 Build with Gradle 7.5 while still supporting Gradle 6.8+
Closes gh-32281
2 years ago
Brian Clozel 89c61e9093 Adapt GlobalObservationConvention imports
See micrometer-metrics/micrometer#3387
2 years ago
Phillip Webb 46be4a3f30 Merge branch '2.7.x' 2 years ago
Phillip Webb e88a682220 Merge branch '2.6.x' into 2.7.x 2 years ago
Phillip Webb 85697ac482 Update copyright year of changed files 2 years ago