Commit Graph

2572 Commits

Author SHA1 Message Date
Phillip Webb 5c9d5e262f Merge branch '3.1.x' into 3.2.x
Closes gh-40482
2024-04-22 17:56:52 -07:00
Phillip Webb 3e5d6c9cce Register ServiceLevelObjectiveBoundary reflection hinds
Register hints for `ServiceLevelObjectiveBoundary` so that the `valueOf`
method can be used when binding in a native image.

Fixes gh-40480
2024-04-22 17:56:11 -07:00
Phillip Webb 6963bd884b Merge branch '3.2.x' 2024-04-18 12:53:26 -07:00
Brian Clozel 647a5ec6be Deprecate framework-specific @*Endpoint annotations
Prior to this commit, applications could declare Actuator Endpoints
using web framework-specific annotations, such as `@ServletEndpoint`,
@ControllerEndpoint and @RestControllerEndpoint.

Such annotations are closely tied to the programming model of specific
web technologies, such as Servlet or Spring MVC. Unlike other
`@Endpoint` support, they are not portable and will not work
transparently over blocking/reactive and transports.

Because of the strong adherence of this support with the underlying
infrastructure, it makes it impossible to evolve the implementation of
Actuator support without breaking this use case. The reference
documentation has been advocating for using `@Endpoint` and
`@*Operation` for custom endpoints for a long time now.

This commit deprecates this specific support in favor of the recommended
approach.

Closes gh-31768
2024-04-15 18:58:52 +02:00
Brian Clozel 24f80154d4 Do not overwrite attributes in ClientObservationConventionAdapter
Prior to this commit, the `ClientObservationConventionAdapter` would
overwrite a request builder attribute. This would happen when the
request is not fully built when the observation starts. At that point,
the tags are built for long task timers, but not for the actual metric.
This effectively overrides the correct value of the URI template in the
builder.

This commit removes this builder update which was invalid in the first
place.

Fixes gh-40330
2024-04-12 16:31:02 +02:00
Andy Wilkinson 12e004f131 Revert "Exclude unwanted javax.inject dependency from Data Couchbase"
This reverts commit 06f5ab162f. The
dependency has been removed in Data Couchbase, making the exclude
unnecessary.

See gh-40200
2024-04-12 11:19:16 +01:00
Andy Wilkinson 1ea6f2f51f Revert "Revert "Exclude unwanted javax.inject dependency from Data Couchbase""
This reverts commit 3b76165f4e.

Turns out, the exclude's still needed for now? with Data Couchbase
5.1.x.

See gh-40200
2024-04-11 17:06:03 +01:00
Andy Wilkinson 93c8513a78 Merge branch '3.2.x'
See gh-40224
2024-04-11 16:56:41 +01:00
Andy Wilkinson 7d3ea3f06f Merge branch '3.1.x' into 3.2.x
See gh-40212
2024-04-11 16:56:22 +01:00
Andy Wilkinson 3b76165f4e Revert "Exclude unwanted javax.inject dependency from Data Couchbase"
This reverts commit 06f5ab162f. The
dependency has been removed in Data Couchbase, making the exclude
unnecessary.

See gh-40200
2024-04-11 16:55:24 +01:00
Andy Wilkinson 3699bcfb87 Merge branch '3.2.x'
See gh-40224
2024-04-09 09:09:12 +01:00
Andy Wilkinson 3bb7baf90f Merge branch '3.1.x' into 3.2.x
See gh-40212
2024-04-09 09:07:52 +01:00
Andy Wilkinson 06f5ab162f Exclude unwanted javax.inject dependency from Data Couchbase
See gh-40200
2024-04-09 09:07:13 +01:00
Moritz Halbritter ce358c601b Polish "Auto-config support for latest Prometheus client and simpleclient"
See gh-40023
2024-04-05 10:45:14 +02:00
Tommy Ludwig 7f26b67e61 Auto-config support for latest Prometheus client and simpleclient
Deprecates the support for simpleclient but ensures that it can work in
conjunction with support for the latest Prometheus client
auto-configuration.

This involves breaking changes to update public classes to support the
latest Prometheus client. Deprecated support for Prometheus simpleclient
is provided in renamed classes.

See gh-40023
2024-04-05 10:12:52 +02:00
Phillip Webb 10260c084b Rename Antora component from spring-boot to boot
Closes gh-40131
2024-03-28 13:21:27 -07:00
Scott Frederick ad79c373f8 Add SNI support to web server SSL auto-configuration
Properties under `server.ssl.server-name-bundles` and
`management.server.ssl.server-name-bundles` can be used to configure
mappings of host names to SSL bundles to support SNI in embedded web
servers.

Closes gh-26022
2024-03-28 14:12:20 -05:00
Phillip Webb af0353ddd3 Remove anchor-rewrite.properties
Remove `anchor-rewrite.properties` now that we have `rewrite.adoc` to
replace them.

See gh-40062
2024-03-26 11:27:03 -07:00
Moritz Halbritter c662e9b6ff Add configuration property to disable long timers in Micrometer Observations
Set management.observations.long-task-timer.enabled = false to disable
the LongTaskTimer creation.

Closes gh-39618
2024-03-26 11:12:39 +01:00
Moritz Halbritter 2d9b1ad592 Use xref for documentation links
Closes gh-33745
2024-03-26 10:11:47 +01:00
Moritz Halbritter de150daf12 Upgrade Cassandra driver to 4.18.0 and change coordinates
Closes gh-39090
2024-03-26 08:58:22 +01:00
Phillip Webb 6bb6a798ce Set version to `true` in antora.yml to allow docs generation
See gh-33766
2024-03-25 08:52:51 -07:00
Johnny Lim 12b4353e28 Polish
See gh-40034
2024-03-22 11:06:34 +01:00
Moritz Halbritter 4047c00aa5 Implement SBOM actuator endpoint
Closes gh-39799
2024-03-21 18:06:48 -07:00
Phillip Webb f35d6b6bd6 Migrate actuator-autoconfigure to Antora
See gh-33766
2024-03-20 15:21:22 -07:00
Matt Pavlovich af18a69d54 Use activemq-client instead of transitional activemq-client-jakarta
See gh-40028
2024-03-20 11:02:01 +00:00
Phillip Webb b4208edd4e Attempt to fix flaky Zipkin test
Update `ZipkinHttpClientSenderTests` to use one mock server per test
rather than a shared static. For some reason the mock server sometimes
seems to get itself in a deadlock state which causes the client to
fail with a `HttpTimeoutException`.
2024-03-18 15:03:59 -07:00
Andy Wilkinson a01e068059 Start building against Micrometer 1.13.0 snapshots
See gh-39889
2024-03-12 09:28:27 +00:00
Stéphane Nicoll 4dfbeaf93f Simplify injection points declaration
This commit simplifies the generics used for SessionRepository and
FindByIdNameSessionRepository as their type signatures already declare
that `S` extends from `Session`.

See gh-39751
2024-02-27 13:46:59 -06:00
Phillip Webb e6fe273105 Polish 2024-02-21 16:38:48 -08:00
Phillip Webb f8a1dae835 Merge branch '3.2.x' 2024-02-21 15:27:57 -08:00
Phillip Webb 12de6aa46a Merge branch '3.1.x' into 3.2.x 2024-02-21 15:27:27 -08:00
Phillip Webb 2c4909a89a Update copyright year of changed files 2024-02-21 13:58:53 -08:00
Moritz Halbritter ed4d13a8bf Move zipkin.Span types in the OpenTelemetry auto-configuration
Brave can work without zipkin2 on the classpath, OpenTelemetry can't.
To not force users to have zipkin2 on the classpath, move it into the
OpenTelemetry auto-configuration.

See gh-39049
2024-02-21 10:07:25 +01:00
Moritz Halbritter 013e148526 Implement JDK HttpClient based Zipkin sender
Closes gh-39545
2024-02-20 14:21:44 +01:00
Moritz Halbritter 7555f6c71e Polish "Migrate to Brave 6 and Zipkin Reporter 3"
See gh-39049
2024-02-20 13:42:27 +01:00
Adrian Cole 4b0bed23b0 Migrate to Brave 6 and Zipkin Reporter 3
Signed-off-by: Adrian Cole <adrian@tetrate.io>

See gh-39049
2024-02-20 12:00:36 +01:00
Moritz Halbritter 3a565e4e4b Use Jersey's ObservationRequestEventListener for Jersey observability
Closes gh-39633
2024-02-20 11:46:14 +01:00
Brian Clozel 77922af3ba Merge branch '3.2.x'
Closes gh-39603
2024-02-16 15:10:14 +01:00
Brian Clozel 59693f2b12 Move "micrometer.observations.*" configuration properties
This commit moves the "micrometer.observations.*" configuration
properties to "management.observations.*" namespace, as it was
introduced in the wrong namespace initially.

The former configuration property is deprecated and will be removed in a
future version.

Fixes gh-39600
2024-02-16 15:03:18 +01:00
Moritz Halbritter 2280aa30cb Merge branch '3.2.x'
Closes gh-39597
2024-02-16 09:29:27 +01:00
Moritz Halbritter de35d2e443 Merge branch '3.1.x' into 3.2.x
Closes gh-39596
2024-02-16 09:28:39 +01:00
Moritz Halbritter e2b29dc9cb Polish "Document default value for show-value configuration properties"
See gh-39589
2024-02-16 09:24:32 +01:00
lukasdooo 7ade54d304 Document default value for show-value configuration properties
See gh-39589
2024-02-16 09:21:55 +01:00
Moritz Halbritter 7f55cae90f Merge branch '3.2.x' 2024-02-12 10:19:46 +01:00
Moritz Halbritter 4387b79831 Merge branch '3.1.x' into 3.2.x 2024-02-12 10:18:46 +01:00
Moritz Halbritter 8ffcfc9b77 Harmonize style of igored exceptions across the codebase 2024-02-12 10:14:20 +01:00
Andy Wilkinson 1f7a983701 Switch to jersey-micrometer for Jersey metrics
Closes gh-39502
2024-02-09 14:22:55 +00:00
Scott Frederick d216474ef0 Merge branch '3.2.x'
Closes gh-39387
2024-02-02 16:07:03 -06:00
Scott Frederick cff9d464d3 Merge branch '3.1.x' into 3.2.x
Closes gh-39386
2024-02-02 16:05:32 -06:00
Stéphane Nicoll c3664f372c Polish
See gh-39382
2024-02-02 16:02:50 -06:00
Wzy19930507 dae3952144 Include the environment default profiles in the env endpoint's response
See gh-39257
2024-01-30 13:51:17 +01:00
Phillip Webb 8f1a330dd5 Update copyright header of cleaned up code
See gh-39259
2024-01-23 10:18:50 -08:00
Tobias Lippert ac5a08a49b Avoid redundant boxing
See gh-39259
2024-01-23 10:18:49 -08:00
Tobias Lippert def7523398 Inline redundant if statements
See gh-39259
2024-01-23 09:07:35 -08:00
Tobias Lippert 9cdd0c3776 Remove unnecessary semicolons
See gh-39259
2024-01-23 09:07:29 -08:00
Phillip Webb a0a804cfdf Merge branch '3.2.x' 2024-01-22 12:20:41 -08:00
Phillip Webb cff8cb98c7 Merge branch '3.1.x' into 3.2.x 2024-01-22 12:20:24 -08:00
Phillip Webb 72f8bb8d13 Merge branch '3.2.x'
Closes gh-39269
2024-01-22 11:50:57 -08:00
Phillip Webb 9ddf15d97a Merge branch '3.1.x' into 3.2.x
Closes gh-39268
2024-01-22 11:50:40 -08:00
Phillip Webb 87ea2b75fb Polish 'Make PropagationType a public type'
See gh-39265
2024-01-22 11:49:45 -08:00
Vaibhav Jaiswal 16c0f035a9 Make PropagationType a public type
The PropagationType enum is returned from public methods so
should be public itself.

See gh-39265
2024-01-22 11:48:10 -08:00
Moritz Halbritter 6e3d4ed878 Use ReactiveFindByIndexNameSessionRepository
See gh-32046
2024-01-22 12:55:37 +01:00
Vedran Pavic 6a9eb7754f Provide an Actuator endpoint for non-indexed session repositories
At present, Actuator sessions endpoint is supported only on a Servlet stack and also requires an indexed session repository. With Spring Session moving to non-indexed session repositories as a default for some session stores, this means that sessions endpoint won't be available unless users opt into a (non-default) indexed session repository.

This commit updates SessionEndpoint so that it is able to work with a non-indexed session repository. In such setup, it exposes operations for fetching session by id and deleting the session.

Additionally, this also adds support for reactive stack by introducing ReactiveSessionEndpoint and its auto-configuration support.

See gh-32046
2024-01-22 12:55:37 +01:00
Brian Clozel bc37a94b76 Merge branch '3.2.x'
Closes gh-39132
2024-01-15 14:15:15 +01:00
Brian Clozel 46b7bd2f23 Add configuration property to enable micrometer annotations
Prior to this commit, the Micrometer annotations support (`@Timed`,
`@Counted`...) was guarded by the presence of both Micrometer and
AspectJ on the classpath.

This signal is too weak, considering the startup performance impact and
the fact that the AspectJ dependency can be brought transitively in many
cases.

This commit adds a new `micrometer.observations.annotations.enabled`
property that is set to `false` by default to only process the
annotations support when this property is enabled.

Fixes gh-39128
2024-01-15 13:51:15 +01:00
Andy Wilkinson 7e382e7bf6 Merge branch '3.2.x'
Closes gh-39123
2024-01-12 17:08:36 +00:00
Andy Wilkinson 145fe15daf Merge branch '3.1.x' into 3.2.x
Closes gh-39122
2024-01-12 17:08:23 +00:00
Andy Wilkinson 3df77c67ec Fix request mapping of endpoint path-mapped to /
Closes gh-35426
2024-01-12 17:07:48 +00:00
Andy Wilkinson 907e4d97f7 Merge branch '3.2.x'
Closes gh-39117
2024-01-12 13:02:56 +00:00
Andy Wilkinson 6ec56da919 Ensure that reactive actuator security has an auth manager
This is a follow-on from afad358 and ensures that the auto-configured
security for Actuator in a WebFlux app has an authentication manager
to back its use of HTTP basic and form login.

Fixes gh-39069
2024-01-12 13:02:31 +00:00
Phillip Webb 653474fc46 Polish 2024-01-11 21:40:18 -08:00
Moritz Halbritter a424ba2055 Restore configuration property for http requests names when using WebFlux
Closes gh-39083
2024-01-11 16:28:23 +01:00
Moritz Halbritter cb3745ff92 Restore configuration property for http requests names when using WebFlux
Closes gh-39083
2024-01-11 16:26:57 +01:00
Andy Wilkinson 17e9f0cb8e Merge branch '3.2.x'
Closes gh-39093
2024-01-11 11:36:38 +00:00
Andy Wilkinson 7087897507 Merge branch '3.1.x' into 3.2.x
Closes gh-39091
2024-01-11 10:33:57 +00:00
Andy Wilkinson 45c32854a5 Fix Checkstyle upgrade
Closes gh-38746
2024-01-10 15:37:38 +00:00
Moritz Halbritter 3e705e8d56 Polish "Use unknown_service as default application name for OpenTelemetry"
See gh-38219
2024-01-10 11:42:22 +01:00
Lenin Jaganathan 470029aff1 Use unknown_service as default application name for OpenTelemetry
See gh-38219
2024-01-10 11:42:12 +01:00
Jonatan Ivanov 820396fdff Add ProcessInfoContributor
This InfoContributor exposes information about
the process of the application.

See gh-38371
2024-01-10 08:45:49 +01:00
Moritz Halbritter 7120dc07ae Adapt to changes in Brave tagged fields handling
See gh-38724

See gh-37435
2024-01-09 11:37:15 +01:00
adispezo 0ca55bf0a6 Add local and tagged correlation fields
Local fields only work in Brave and not with OpenTelemetry.

Tagged fields work both with Brave and with OpenTelemetry.

See gh-37435
2024-01-09 11:35:40 +01:00
Moritz Halbritter 2cce123bb5 Add property to control 'path' field inclusion in error responses
By default it is included.

Closes gh-38619
2024-01-09 09:33:00 +01:00
Moritz Halbritter c4be302fdb Auto-configure SpanTagAnnotationHandler
Closes gh-38662
2024-01-09 09:03:51 +01:00
Andy Wilkinson 93a2b1cda0 Remove dependency management for Dropwizard Metrics
Closes gh-39034
2024-01-08 09:43:37 +00:00
Andy Wilkinson a1c7c0bccc Upgrade to AssertJ 3.25.1
Closes gh-38997
2024-01-04 17:26:35 +00:00
Phillip Webb 5354ad15b3 Merge branch '3.1.x'
Closes gh-38877
2023-12-19 22:51:48 -08:00
Yanming Zhou 8599e5a986 Remove unnecessary `toString()` calls
See gh-38739
2023-12-19 22:38:34 -08:00
Phillip Webb 1d10e51755 Adapt to upstream Spring Security changes 2023-12-14 20:33:09 -08:00
Moritz Halbritter c50172d5c7 Undeprecate 'management.metrics.tags'
Closes gh-38583
2023-12-13 08:26:11 +01:00
Moritz Halbritter ff82b8d1c1 Add auto-configuration for a no-op tracer
This auto-configuration ensures, if Micrometer Tracing is on the
classpath, that there is always a tracer. It backs off if there is
already a tracer, for example contributed by the Brave or the Otel
auto-configurations, which are run before.

See gh-38568
2023-12-12 11:29:43 +01:00
Moritz Halbritter 02347abefb Disable propagation of traces if tracing is disabled
Closes gh-38641
2023-12-05 11:19:43 +01:00
Moritz Halbritter a0fc2d48cd Merge branch '3.1.x' 2023-12-05 11:19:32 +01:00
Moritz Halbritter 350bc26bbe Reinstate 'management.tracing.enabled' property
See gh-38626
2023-12-05 11:18:18 +01:00
Moritz Halbritter 4d01d95fbc Merge branch '3.1.x'
Closes gh-38627
2023-12-01 14:45:53 +01:00
Moritz Halbritter 3d4d1e80ca Remove management.tracing.enabled from documentation
Closes gh-38626
2023-12-01 14:43:13 +01:00
Brian Clozel 0321a8a05b Configure ObservationRegistry on JmsListener
Prior to this commit, we set in gh-37388 the ObservationRegistry on the
auto-configured JmsTemplate bean. This enables observations and context
propagation when sending JMS messages.

This commit applies the same to the `DefaultJmsListenerContainerFactory`
and the `DefaultJmsListenerContainerFactoryConfigurer`, in order to
enable observations on `@JmsListener` annotated methods.

This commit also refactors the support implemented in gh-37388 to avoid
relying on a bean post processor and instead set the observation
registry directly in the main auto-configuration: while Micrometer core
is an actuator-only dependency, Micrometer Observation API is a compile
dependnecy for spring-jms itself and there is no need to separate
concerns there.

Fixes gh-38613
2023-12-01 09:36:00 +01:00
Moritz Halbritter 6cb9af11e8 Merge branch '3.1.x'
Closes gh-38610
2023-11-30 09:03:27 +01:00
Moritz Halbritter 203cd542c0 Clear MeterRegistry before each test case
Closes gh-38604
2023-11-30 09:02:22 +01:00
Andy Wilkinson 75a8955659 Only start management context when parent has a web server
Fixes gh-38554
2023-11-28 17:45:12 +00:00
Moritz Halbritter f613ab89b9 Auto-configure observations for RestClients
Closes gh-38500
2023-11-23 09:28:09 +01:00
Andy Wilkinson 9c68a2ab87 Integrate child management context with parent context's lifecycle
Previously, the child management context was created when the
parent context's web server was initialized and it wasn't stopped
or closed until the parent context was closed. This resulted in
the child context being left running when the parent context was
stopped. This would then cause a failure when the parent context
was started again as another web server initialized event would be
received and a second child management context would be started.

This commit updates the initialization of the child management
context to integrate it with the lifecycle of the parent context.
The management context is now created the first time the parent
context is started. It is stopped when the parent context is
stopped and restarted if the parent context is started again.
This lifecycle management is done using a phase that ensures
that the child context is not started until the parent context's
web server has been started.

Fixes gh-38502
2023-11-22 19:50:22 +00:00
Johnny Lim 175b6473c7 Polish
See gh-38389
2023-11-22 10:16:19 +01:00
Phillip Webb 59493e8306 Fix failing tests following version upgrades 2023-11-20 21:03:17 -08:00
Moritz Halbritter d8ce901011 Close meter registries early in the shutdown process
Closes gh-38240
2023-11-16 09:26:02 +01:00
Andy Wilkinson 517026ab9f Merge branch '3.1.x'
Closes gh-38366
2023-11-15 16:00:20 +00:00
Andy Wilkinson 37b2567aeb Merge branch '3.0.x' into 3.1.x
Closes gh-38365
2023-11-15 16:00:05 +00:00
Andy Wilkinson ff555c5ceb Merge branch '2.7.x' into 3.0.x
Closes gh-38364
2023-11-15 15:57:39 +00:00
Andy Wilkinson c2156d6803 Remove static state from CF web endpoint integration tests
The mocks being static meant that their state was shared across each
test in the class. This resulted in the tests being order dependent.
This commit uses instance variables to hold the mocks, thereby
ensuring that they're recreated for each test as part of the standard
JUnit lifecycle.

Closes gh-38363
2023-11-15 15:16:24 +00:00
Moritz Halbritter 7a8a393154 Revert "Close meter registries early in the shutdown process"
This reverts commit f62c1188a1.
2023-11-15 14:17:07 +01:00
Moritz Halbritter f62c1188a1 Close meter registries early in the shutdown process
Closes gh-38240

Co-authored-by: Phillip Webb <pwebb@vmware.com>
2023-11-15 10:24:54 +01:00
Phillip Webb 80210e93d3 Make LogCorrelationPropertySource an EnumerablePropertySource
Change `LogCorrelationPropertySource` to an `EnumerablePropertySource`
to reduce the likelihood of `Binder` errors.

Closes gh-38349
2023-11-13 10:40:24 -08:00
Claudio Nave 61aecdedd6 Remove Liquibase javax.activation excludes
Liquibse no longer declares a dependency on `javax.activation`
(see https://github.com/liquibase/liquibase/issues/4487) so we
can now remove our exclusions.

See gh-38274
2023-11-09 11:44:31 -08:00
Phillip Webb 0ea75f0f65 Polish 2023-11-05 10:53:25 -08:00
Phillip Webb cc4ef32efe Merge branch '3.1.x' 2023-11-02 14:19:12 -07:00
Phillip Webb 47c1088111 Polish 2023-11-02 14:19:07 -07:00
Moritz Halbritter 20edbb402f Merge branch '3.1.x' 2023-10-31 10:23:13 +01:00
Moritz Halbritter 607ed86edb Merge branch '3.0.x' into 3.1.x 2023-10-31 10:23:01 +01:00
Moritz Halbritter dccf378d49 Polish CloudFoundryActuatorAutoConfiguration 2023-10-31 10:09:44 +01:00
Moritz Halbritter e0985331c0 Polish ReactiveCloudFoundrySecurityService 2023-10-31 09:56:35 +01:00
Moritz Halbritter 9152217c96 Fix JUnit's @Nested usage 2023-10-31 09:49:01 +01:00
Moritz Halbritter 627a821d5f Polish ReactiveTokenValidator 2023-10-31 09:49:01 +01:00
Moritz Halbritter 0e63326beb Merge branch '3.1.x'
Closes gh-38080
2023-10-27 14:21:26 +02:00
Moritz Halbritter 140ba4039d Merge branch '3.0.x' into 3.1.x
Closes gh-38079
2023-10-27 14:20:07 +02:00
Moritz Halbritter 43a3fbf449 Move "Sanitize Sensitive Values" in docs
Closes gh-35917
2023-10-27 14:16:48 +02:00
Moritz Halbritter 79f8bfaeb7 Merge branch '3.1.x'
Closes gh-38073
2023-10-27 10:55:10 +02:00
Moritz Halbritter 790ee9afb5 Add FailureAnalyzer for NoSuchHealthContributorFailureExceptions
Closes gh-36489
2023-10-27 10:48:48 +02:00
Moritz Halbritter 4c3de96d74 Fix links to Antora based JavaDoc and reference documentation
This introduces two different attributes for, e.g. the Spring Framework
version: the "normal" one, e.g. 6.1.0-SNAPSHOT, and the Antora one,
e.g. 6.1.

Spring Framework's reference documentation is still broken when using
SNAPSHOT versions, see spring-framework/gh-31480.

See gh-38000
2023-10-24 10:31:26 +02:00
Johnny Lim b5d4983829 Polish
See gh-37984
2023-10-23 11:15:27 +02:00
Phillip Webb d638bbb0ba Merge branch '3.1.x'
Closes gh-37967
2023-10-19 21:25:44 -07:00
Phillip Webb 1d456e09d2 Merge branch '3.0.x' into 3.1.x
Closes gh-37966
2023-10-19 21:12:52 -07:00
Phillip Webb a0b999c8b4 Merge branch '2.7.x' into 3.0.x
Closes gh-37965
2023-10-19 20:55:51 -07:00
Phillip Webb abdad1cabe Constently use assertThatExceptionOf... assertions
Closes gh-37964
2023-10-19 20:17:26 -07:00
Johnny Lim 446677375e Polish gh-35082
See gh-37831
2023-10-12 14:17:02 +02:00
Andy Wilkinson 81cbf05b41 Merge branch '3.1.x'
Closes gh-37839
2023-10-12 11:39:19 +01:00
Andy Wilkinson 19b877fc14 Merge branch '3.0.x' into 3.1.x
Closes gh-37838
2023-10-12 11:39:06 +01:00
Andy Wilkinson f780cc6d03 Merge branch '2.7.x' into 3.0.x
Closes gh-37837
2023-10-12 11:38:32 +01:00
Andy Wilkinson 11311dbf6d Register task executor metrics when using lazy init
Fixes gh-37832
2023-10-12 11:19:33 +01:00
Andy Wilkinson bdaf7a7603 Merge branch '3.1.x'
Closes gh-37830
2023-10-11 15:06:09 +01:00
Andy Wilkinson 411586347c Merge branch '3.0.x' into 3.1.x
Closes gh-37829
2023-10-11 15:04:21 +01:00
Andy Wilkinson 781ac2ece2 Merge branch '2.7.x' into 3.0.x
Closes gh-37828
2023-10-11 15:02:36 +01:00
Moritz Halbritter 1bd14652d8 Apply Wavefront token type to auto-configured WavefrontSender
Closes gh-37165
2023-10-11 09:12:26 +02:00
Andy Wilkinson 5280cfeec0 Adapt to breaking API change in Micrometer
See gh-37703
2023-10-10 17:56:56 +01:00
Jonatan Ivanov 346db8e795 Add auto-configuration for SpanAspect
See gh-37640
2023-10-05 11:26:21 +02:00
Moritz Halbritter fbec06a134 Support new CSP auth method for Wavefront
Closes gh-37165
2023-10-05 10:44:19 +02:00
Andy Wilkinson a630baf32a Start building against Micrometer Tracing 1.2.0 snapshots
See gh-37704
2023-10-04 12:05:34 +01:00
Andy Wilkinson d59ea2f038 Start building against Micrometer Tracing 1.1.6 snapshots
See gh-37694
2023-10-04 10:00:18 +01:00
Andy Wilkinson 7907358875 Start building against Micrometer Tracing 1.0.11 snapshots
See gh-37679
2023-10-04 09:52:49 +01:00
Andy Wilkinson 7d40a45b50 Merge branch '3.1.x'
Closes gh-37662
2023-10-03 11:21:29 +01:00
Andy Wilkinson a4100e12ff Merge branch '3.0.x' into 3.1.x
Closes gh-37661
2023-10-03 11:05:51 +01:00
Andy Wilkinson 931584f8af Merge branch '2.7.x' into 3.0.x
Closes gh-37659
2023-10-03 10:28:51 +01:00
Johnny Lim c9932bb73a Use AssertJ's fail, not JUnit's
This commit also updates Checkstyle to prevent use of JUnit's
assertions from being reintroduced.

See gh-37655
2023-10-03 10:11:12 +01:00
Jonatan Ivanov a454712dea Add auto-configuration for CountedAspect and TimedAspect
See gh-37626
2023-10-02 10:19:59 +02:00
Moritz Halbritter 72a4e1ebae Honor timeout in ZipkinWebClientSender
Unfortunately there's no good way to configure connect and read timeout
separately, which works for all supported reactive clients. This
implementation applies a timeout through Reactor's timeout method. The
timeout from the properties is summed together and this is the applied
timeout. While not perfect, this is better than no timeout at all.

Closes gh-31496
2023-09-29 10:05:29 +02:00
Phillip Webb 052757c2d8 Polish 2023-09-27 20:58:09 -07:00
Andy Wilkinson ecc670772a Make user details service auto-configs back off more readily
Previously auto-configuration of a user details service (imperative
or reactive) would only back off on the presence of certain beans.
This led to situations where the im-memory service was
auto-configured and the default password was logged even though
another authentication mechanism was in use.

This commit updates the auto-configuration so that it backs off
when depending on Spring Security's OAuth2 Client and OAuth2
Resource Server modules. In the imperative case it will also back
off when depending on the SAML 2 provider.

Closes gh-35338
2023-09-26 16:47:19 +01:00
Phillip Webb 2075f6c685 Merge branch '3.1.x' 2023-09-20 17:16:13 -07:00
Phillip Webb 78eb8f90d1 Merge branch '3.0.x' into 3.1.x 2023-09-20 17:12:27 -07:00
Phillip Webb 78c3512e32 Polish 2023-09-20 17:11:54 -07:00
Brian Clozel 0fc97e9315 Auto-configure ObservationRegistry on JmsTemplate
Spring Boot auto-configures both a `JmsTemplate` and a
`JmsMessagingTemplate`. As of Spring Framework 6.2, JMS has
observability support when publishing messages.

This commit creates a bean post-processor that configures an
`ObservationRegistry` on the template, if the registry is present.

Closes gh-37388
2023-09-15 16:28:06 +02:00
Moritz Halbritter 3dd6372602 Polish "Add service connection from OpenTelemetry Collector"
See gh-35082
2023-09-14 11:10:19 +02:00
Moritz Halbritter c387c87fda Polish "Add service connection from OpenTelemetry Collector"
See gh-35082
2023-09-14 10:50:36 +02:00
Eddú Meléndez 6997277f75 Add service connection from OpenTelemetry Collector
See gh-35082
2023-09-14 09:44:20 +02:00
Johnny Lim c2b78830ff Polish
See gh-37340
2023-09-13 10:26:54 +02:00
Stephane Nicoll 7df79432eb Polish "Upgrade to Micrometer Tracing 1.0.10"
See gh-37345
2023-09-12 15:10:19 +02:00
Andy Wilkinson 4ebee17cb1 Suppress warnings until more to new semconv module
OTel has deprecated their semconv module and introduced a new module
with different Maven coordinates. micrometer-metrics/tracing#343 will
move Micrometer Tracing to the new module. Until then, we need to
suppress the deprecation warnings that result from using the old one.

Closes gh-37347
2023-09-12 13:43:27 +01:00
Brian Clozel c8d036eaa8 Remove ServerHttpObservationFilter from WebFlux
This commit removes the auto-configuration of the
`ServerHttpObservationFilter` bean for WebFlux applications as it's been
deprecated by Spring Framework.

The Observability instrumentation is now handled at the
`WebHttpHandlerBuilder` in Framework directly and doesn't need any
auto-configuration from Spring Boot.

Closes gh-37344
2023-09-12 10:59:25 +02:00
Moritz Halbritter fa42316652 Use spring.application.name for OTel service.name when not set
Closes gh-37285
2023-09-11 10:45:40 +02:00
Moritz Halbritter 11ebe32dcf Remove dependency to opentelemetry-sdk
Closes gh-37284
2023-09-11 09:49:28 +02:00
Moritz Halbritter f0bb054774 Merge branch '3.1.x'
Closes gh-37254
2023-09-08 11:21:20 +02:00
Moritz Halbritter d9b7a8c0af Merge branch '3.0.x' into 3.1.x
Closes gh-37253
2023-09-08 11:17:40 +02:00
Moritz Halbritter bbc10856ee Merge branch '2.7.x' into 3.0.x
Closes gh-37252
2023-09-08 11:17:25 +02:00
Johnny Lim 5f9bc721d3 Add default value metadata for management.metrics.export.signalfx.published-histogram-type
See gh-37210
2023-09-08 11:04:26 +02:00
Andy Wilkinson ed5d16de84 Upgrade to Jetty 12
Closes gh-36073
2023-09-07 13:59:15 +01:00
Andy Wilkinson 88f8311a59 Start building against Micrometer 1.12.0 snapshots
See gh-37226
2023-09-07 13:34:12 +01:00
Scott Frederick 47508b8338 Merge branch '3.1.x'
Closes gh-37179
2023-09-01 14:42:24 -05:00
Scott Frederick 03dcf8b663 Merge branch '3.0.x' into 3.1.x
Closes gh-37178
2023-09-01 14:42:15 -05:00
Scott Frederick 1e85bf7ca8 Fix mapping of consumed types to propagators
Fixes gh-37161
2023-09-01 14:40:01 -05:00
Moritz Halbritter a7855622f2 Merge branch '3.1.x'
Closes gh-37157
2023-08-31 11:51:26 +02:00
Moritz Halbritter b86937bb8e Merge branch '3.0.x' into 3.1.x
Closes gh-37156
2023-08-31 11:51:15 +02:00
Moritz Halbritter 61739bd917 Prevent propagation for local fields when using W3C propagation
Closes gh-37109
2023-08-31 11:50:05 +02:00
Johnny Lim 847c6aec01 Fix metadata of management.otlp.metrics.export.base-time-unit
See gh-37094
2023-08-24 16:30:13 +02:00
Jonatan Ivanov a3f37089db Fix failing tests due to extended exemplars
Micrometer introduced extended exemplars functionality that adds
exemplars to _count too not only to histogram buckets,
see: https://github.com/micrometer-metrics/micrometer/pull/3996
Because of this, some verifications should be changed.
2023-08-16 08:55:40 +02:00
Phillip Webb 8edec21a6f Update copyright year of changed files 2023-08-13 20:44:44 -07:00
Moritz Halbritter 7bb337aeb1 Polish tests 2023-08-08 13:12:47 +02:00
Moritz Halbritter 4ea3c75331 Improve exception message if endpoint can't be found 2023-08-08 13:12:47 +02:00
Moritz Halbritter ed9169501e Polish 2023-08-08 13:12:47 +02:00
Moritz Halbritter 02a7c22f40 Revert "Use virtual threads in JmsHealthIndicator if enabled"
This reverts commit 6fc585c5d2.
2023-08-03 17:25:28 +02:00
Moritz Halbritter a843aca821 Revert "Polish"
This reverts commit 25eb3c8c18.
2023-08-03 17:25:15 +02:00
Moritz Halbritter 25eb3c8c18 Polish 2023-08-03 11:16:16 +02:00
Moritz Halbritter 6fc585c5d2 Use virtual threads in JmsHealthIndicator if enabled
Closes gh-36694
2023-08-03 10:32:42 +02:00
Moritz Halbritter e677eb7759 Polish Polish R2dbcObservationAutoConfiguration 2023-08-02 12:14:03 +02:00
Moritz Halbritter 20d264150b Polish R2dbcObservationAutoConfiguration 2023-08-02 11:41:30 +02:00
Scott Frederick f2ad08c292 Add since version to deprecated config properties
See gh-36482
2023-08-01 16:13:22 -05:00
Moritz Halbritter b0615dd311 Split OpenTelemetry auto-configuration
The OpenTelemetry bean is now configured in the
OpenTelemetryAutoConfiguration. This method also applies
SdkLoggerProvider and SdkMeterProvider.

Additionally, the OpenTelemetry Resource is now a bean. Resource
attributes can now be configured through properties

The resourceAttributes in OtlpProperties have been deprecated in favor
of the new one in OpenTelemetryProperties.

Closes gh-36544
Closes gh-36545
2023-07-27 08:53:09 +02:00
Moritz Halbritter 6050fff078 Auto-configure observability for R2DBC
The new ConnectionFactoryDecorator can be used to decorate the
ConnectionFactory built by the ConnectionFactoryBuilder.

The new R2dbcObservationAutoConfiguration configures a
ConnectionFactoryDecorator to attach a ObservationProxyExecutionListener
to ConnectionFactories. This enables Micrometer Observations for R2DBC
queries.

Closes gh-33768
2023-07-25 17:01:55 +02:00
Andy Wilkinson df4c65e494 Merge branch '3.1.x'
Closes gh-36568
2023-07-25 15:18:02 +01:00
Andy Wilkinson ee9574d399 Merge branch '3.0.x' into 3.1.x
Closes gh-36567
2023-07-25 15:04:30 +01:00
Andy Wilkinson e106828fc8 Merge branch '2.7.x' into 3.0.x
Closes gh-36566
2023-07-25 14:59:44 +01:00
Andy Wilkinson 5c6a9122cb Polish "Test Micrometer config to property exposure"
See gh-33743
2023-07-25 14:43:14 +01:00
Mirko Sobeck 19e70055a5 Test Micrometer config to property exposure
See gh-33743
2023-07-25 14:37:25 +01:00
Andy Wilkinson 2289b725d2 Merge branch '3.1.x'
Closes gh-36560
2023-07-25 13:08:01 +01:00
Andy Wilkinson 2766c4b648 Merge branch '3.0.x' into 3.1.x
Closes gh-36559
2023-07-25 13:07:48 +01:00
Andy Wilkinson d290d05f63 Add missing Stackdriver metric-type-prefix property
Closes gh-36499
2023-07-25 13:01:59 +01:00
Andy Wilkinson 0f110a5f5b Merge branch '3.1.x'
Closes gh-36557
2023-07-25 12:54:46 +01:00
Andy Wilkinson 22fa904590 Merge branch '3.0.x' into 3.1.x
Closes gh-36556
2023-07-25 12:54:34 +01:00
Andy Wilkinson 45624c0a78 Merge branch '2.7.x' into 3.0.x
Closes gh-36555
2023-07-25 12:53:11 +01:00
Andy Wilkinson aae8665db1 Add missing management.metrics.export.wavefront properties
Closes gh-36498
2023-07-25 12:35:58 +01:00
Andy Wilkinson 346ebbc6f8 Merge branch '3.1.x'
Closes gh-36554
2023-07-25 12:09:22 +01:00
Andy Wilkinson 5d1b2348e8 Merge branch '3.0.x' into 3.1.x
Closes gh-36553
2023-07-25 12:08:43 +01:00
Andy Wilkinson 826bad5820 Merge branch '2.7.x' into 3.0.x
Closes gh-36552
2023-07-25 12:08:19 +01:00
Andy Wilkinson a6c19dae07 Add missing management.metrics.export.signalfx properties
Closes gh-36497
2023-07-25 11:35:57 +01:00
Andy Wilkinson c9c36e7e42 Merge branch '3.1.x'
Closes gh-36527
2023-07-24 14:38:52 +01:00
Andy Wilkinson 54323d1a95 Merge branch '3.0.x' into 3.1.x
Closes gh-36526
2023-07-24 14:35:14 +01:00
Andy Wilkinson 2db45e9ba3 Merge branch '2.7.x' into 3.0.x
Closes gh-36525
2023-07-24 14:34:50 +01:00
Andy Wilkinson a5d5908c27 Add missing management.metrics.export.atlas properties
Closes gh-36496
2023-07-24 14:34:11 +01:00
Andy Wilkinson 3affb3342e Deprecate auto-configuration for InfluxDB
Closes gh-35190
2023-07-20 13:31:10 +01:00
Moritz Halbritter 54e99d68fa Auto-configure ObservationRegistry on ScheduledTaskRegistrar
The TaskSchedulingAutoConfiguration.taskScheduler auto-configuration now
no longer backs off on SchedulingConfigurer beans.

Closes gh-36119
2023-07-20 09:43:12 +02:00
kitbolourchi abebc396c0 Change B3 extraction format to single
See gh-36061
2023-07-19 08:14:01 +02:00
Stephane Nicoll c726a13395 Polish "Add auto-configuration for ObservedAspect"
See gh-35191
2023-07-17 16:06:08 +02:00
Vedran Pavic 0dae89e837 Add auto-configuration for ObservedAspect
This adds support for auto-configuring `ObservedAspect` when AspectJ is
on the classpath, which enables the usage of `@Observed`.

See gh-35191
2023-07-17 16:05:48 +02:00
Stephane Nicoll 31db1d8125 Merge branch '3.1.x'
Closes gh-36430
2023-07-17 15:48:41 +02:00
Stephane Nicoll 7195d87e6c Merge branch '3.0.x' into 3.1.x
Closes gh-36429
2023-07-17 15:48:30 +02:00
Stephane Nicoll 750096b9c2 Polish "Allow custom ExemplarSampler to be used"
See gh-35619
2023-07-17 15:46:48 +02:00
Johnny Goncalves 94b17ecd26 Allow custom ExemplarSampler to be used
See gh-35619
2023-07-17 15:44:05 +02:00
Stephane Nicoll df8b73d8f7 Merge branch '3.1.x'
Closes gh-36425
2023-07-17 15:09:23 +02:00
Stephane Nicoll 588129318c Merge branch '3.0.x' into 3.1.x
Closes gh-36423
2023-07-17 15:06:00 +02:00
Jonatan Ivanov 58cfdbfa2d Add missing OTel Span attributes
OTel semantic conventions mandate certain resource attributes to present
on exported spans. This commits make sure that the attribute we add are
merged with the defaults, rather than replacing them.

See gh-36155
2023-07-17 15:00:51 +02:00
Jonatan Ivanov 8115f8f146 Add property for base time unit in OTLP registry
Micrometer added a new configuration option to its OTLP registry to
enable configuring the base time unit. These changes provide a
configuration property to support to it.

See gh-36393
2023-07-17 13:17:41 +02:00
Stephane Nicoll 783bfb62e2 Merge branch '3.1.x'
Closes gh-36420
2023-07-17 10:04:14 +02:00
Stephane Nicoll d2912c6442 Update copyright year of changed files
See gh-36306
2023-07-17 09:40:57 +02:00
Christoph Dreis 8321887d6a Fix typos
See gh-36306
2023-07-17 09:40:16 +02:00
Andy Wilkinson b8c4fb6b9a Upgrade to Liquibase 4.23.0
Closes gh-36377
2023-07-14 19:57:27 +01:00
Andy Wilkinson 8ed2ef5640 Merge branch '3.1.x'
Closes gh-36277
2023-07-07 12:07:25 +01:00
Andy Wilkinson c4157bb515 Merge branch '3.0.x' into 3.1.x
Closes gh-36276
2023-07-07 12:07:07 +01:00
Andy Wilkinson cc80bb78fe Merge branch '2.7.x' into 3.0.x
Closes gh-36275
2023-07-07 12:06:51 +01:00
Andy Wilkinson 52f732920b Support multiple health groups with an additional path with Jersey
This commit knowingly makes breaking API changes to
JerseyHealthEndpointAdditionalPathResourceFactory. We considered
other options but they all had the potential to be backwards
incompatible in one way or another. Faced with that situation we
concluded that the likelihood of anyone using the modified API
directly is small enough to warrant making the breaking changes.
If it becomes apparent that we have misjudged things we can revisit
the changes in the future.

Closes gh-36250
2023-07-07 11:21:56 +01:00
Johnny Lim 7c77e1bb85 Polish 'Log correlation IDs when Micrometer tracing is being used'
See gh-36158
2023-07-02 20:08:45 +01:00
Ahmed Ashour 298bfd96c2 Change WebServer log messages to use port or ports, not port(s)
See gh-36103
2023-06-30 16:28:21 +01:00
Moritz Halbritter b4bc7cebbc Revert "Add property to specify the order of ServerHttpObservationFilter"
This reverts commit 7b90fbb0b2.
2023-06-30 14:01:27 +02:00
Moritz Halbritter 849f65a0de Revert "Apply filter order to ServerHttpObservationFilter"
This reverts commit efcc65bc5b.
2023-06-30 14:01:26 +02:00
Andy Wilkinson b645eb32ac Remove deprecated code that was to be removed in 3.2
Closes gh-36034
2023-06-23 18:14:22 +01:00
Andy Wilkinson 357c67a999 Merge branch '3.1.x' 2023-06-23 15:58:51 +01:00
Andy Wilkinson 3f7fe25cb9 Merge branch '3.0.x' into 3.1.x
Closes gh-36044
2023-06-23 15:58:36 +01:00
Andy Wilkinson 2fae5de245 Merge branch '2.7.x' into 3.0.x
Closes gh-36043
2023-06-23 15:50:02 +01:00
Andy Wilkinson d2966e1cbf Polish "Replace calls to verifyComplete() to avoid indefinite blocking"
See gh-35915
2023-06-23 12:38:12 +01:00
ThomazPassarelli f9da30faf1 Replace calls to verifyComplete() to avoid indefinite blocking
See gh-35915
2023-06-23 12:16:26 +01:00
Jonatan Ivanov c1b295fd71 Log correlation IDs when Micrometer tracing is being used
Add support for logging correlation IDs with Logback or Log4J2 whenever
Micrometer tracing is being used.

The `LoggingSystemProperties` class now accepts a defualt value resolver
which will be used whenever a value isn't in the environment. The
`AbstractLoggingSystem` provides a resolver that supports the
`logging.pattern.correlation` property and will return a value whenever
`LoggingSystem.EXPECT_CORRELATION_ID_PROPERTY` is set.

Using `LoggingSystem.EXPECT_CORRELATION_ID_PROPERTY` allows us to
provide a consistent width for the correlation ID, even when it's
missing from the MDC.

The exact correlation pattern returned will depend on the `LoggingSytem`
implementation. Currently Logback and Log4J2 are supported and both
make use of a custom converter which delegates to a new
`CorrelationIdFormatter` class.

Closes gh-33280
2023-06-22 00:28:45 -07:00
Phillip Webb 3a796aedea Merge branch '3.1.x' 2023-06-22 00:28:01 -07:00
Phillip Webb 31f218c4e0 Merge branch '3.0.x' into 3.1.x 2023-06-22 00:27:51 -07:00