Commit Graph

2404 Commits

Author SHA1 Message Date
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