Commit Graph

1281 Commits (a929734f2c994c7bf7744b541fcafaf7e9fec3d7)

Author SHA1 Message Date
Andy Wilkinson 35ea3b234d Prevent repository metrics from causing a circular reference
Fixes gh-27591
3 years ago
Madhura Bhave 49c86e6e1b Allow health groups to be configured at an additional path
Closes gh-25471

Co-authored-by: Phillip Webb <pwebb@vmware.com>
3 years ago
Stephane Nicoll 72433e8f53 Merge branch '2.5.x'
Closes gh-27617
3 years ago
Stephane Nicoll a393c2982c Merge branch '2.4.x' into 2.5.x
Closes gh-27616
3 years ago
Stephane Nicoll cd0bb969db Fix Potential NPE in TomcatMetricsBinder.findContext()
Closes gh-27576
3 years ago
Andy Wilkinson 64c0eceec7 Add support for dumping the heap on OpenJ9
Closes gh-26466
3 years ago
Andy Wilkinson 5163bdab22 Merge branch '2.5.x'
Closes gh-27489
3 years ago
Andy Wilkinson a71d19bce7 Merge branch '2.4.x' into 2.5.x
Closes gh-27488
3 years ago
Andy Wilkinson 388068cdff Polish "Sanitize URIs with non-alpha characters in their schemes"
See gh-27482
3 years ago
Billy Tobon bafa9c4784 Sanitize URIs with non-alpha characters in their schemes
See gh-27482
3 years ago
Andy Wilkinson 355226c21e Merge branch '2.5.x'
Closes gh-27474
3 years ago
Andy Wilkinson eaca9c7a83 Merge branch '2.4.x' into 2.5.x
Closes gh-27473
3 years ago
Andy Wilkinson ee07d6c3ca Increase response timeout for server-bound WebTestClients
Closes gh-27472
3 years ago
Phillip Webb 7e9ac39f0d Update copyright year of changed files 3 years ago
Andy Wilkinson 37f690323f Polish
Closes gh-27432
3 years ago
Andy Wilkinson bb26b7bdf5 Polish
Closes gh-27431
3 years ago
izeye 734293d491 Polish
See gh-27418
3 years ago
Andy Wilkinson c211c971f1 Polishing
Closes gh-27429
3 years ago
Andy Wilkinson 4a533e14c3 Merge branch '2.4.x' into 2.5.x
Closes gh-27428
3 years ago
dreis2211 4d0c98011e Polishing
See gh-27417
3 years ago
Andy Wilkinson 6f0b23502e Merge branch '2.5.x'
Closes gh-27347
3 years ago
Andy Wilkinson d4159130a5 Merge branch '2.4.x' into 2.5.x
Closes gh-27346
3 years ago
Andy Wilkinson 7a23a12ce0 Fix configprops endpoint's handling of config tree values
Fixes gh-27327
3 years ago
Andy Wilkinson e1049a55ff Avoid retrieving values from Record beyond session boundary
See gh-27294
3 years ago
Andy Wilkinson 9f9c89a357 Polish "Use server version from database in Neo4j health details"
See gh-27294
3 years ago
Gerrit Meier f7fd0ac527 Use server version from database in Neo4j health details
See gh-27294
3 years ago
Andy Wilkinson 8db63db564 Merge branch '2.5.x'
Closes gh-27333
3 years ago
Andy Wilkinson 9a81d2fe09 Merge branch '2.4.x' into 2.5.x
Closes gh-27332
3 years ago
Andy Wilkinson c005e1de9a Rename test classes to match our naming conventions
Closes gh-27331
3 years ago
Stephane Nicoll dc5acb0019 Remove deprecated code flagged for removal
Closes gh-27303
3 years ago
Madhura Bhave 111ea31036 Merge branch '2.5.x' into main 3 years ago
Madhura Bhave ed22e4a897 Merge branch '2.4.x' into 2.5.x 3 years ago
Madhura Bhave 23b377e1a1 Fix typo 3 years ago
Andy Wilkinson 9b82836f0e Merge branch '2.5.x'
Closes gh-27305
3 years ago
Andy Wilkinson 685b78f504 Merge branch '2.4.x' into 2.5.x
Closes gh-27304
3 years ago
Andy Wilkinson 49baacbc1c Polish "Mark Redis as down when cluster_state is fail"
See gh-27300
3 years ago
Hoan Vu Hong f31141de09 Mark Redis as down when cluster_state is fail
See gh-27300
3 years ago
Andy Wilkinson d21f8df1ad Polish "Auto-configure Jetty connection and SSL metrics"
See gh-26418
3 years ago
bono007 e6c43a32c8 Auto-configure Jetty connection and SSL metrics
See gh-26418
3 years ago
Stephane Nicoll c16ef0a006 Upgrade to Neo4j Java Driver 4.3.3
Closes gh-27278
3 years ago
Phillip Webb 2c518f1dff Merge branch '2.4.x' into 2.5.x 3 years ago
Phillip Webb a76e5c043e Update copyright year of changed files 3 years ago
Andy Wilkinson d635e1e779 Merge branch '2.4.x' into 2.5.x
Closes gh-26923
3 years ago
Andy Wilkinson fe078c8afc Avoid capturing URI template when interceptor won't use it
Previously, the URI template handler installed by the client metrics
interceptor would always capture the URI template and push it onto the
deque, irrespective of whether auto timing was enabled. When
auto-timing is disabled the deque is never polled so this led to its
unrestricted growth.

This commit updates the URI template handler so that a URI template is
only pushed onto the deque when the auto timing configuration enables
the interceptor.

Fixes gh-26915
3 years ago
Andy Wilkinson 866f1e34c1 Merge branch '2.4.x' into 2.5.x
Closes gh-26873
3 years ago
Andy Wilkinson 37d395bad2 Try to stabilize flaky MetricsWebClientFilterFunction test
Closes gh-26855
3 years ago
Andy Wilkinson c5728c9560 Merge branch '2.4.x'
Closes gh-26827
3 years ago
Andy Wilkinson 303edac6bb Merge branch '2.3.x' into 2.4.x
Closes gh-26826
3 years ago
Andy Wilkinson d1e1796f76 Consider overridden getRootUri() when getting root URI
Fixes gh-26812
3 years ago
Phillip Webb 850088de32 Merge branch '2.4.x'
Closes gh-26823
3 years ago
Phillip Webb d5264664e6 Merge branch '2.3.x' into 2.4.x
Closes gh-26822
3 years ago
Phillip Webb 1f6983c4c9 Make CompositeHealth.getDetails() public
Change `CompositeHealth.getDetails()` to public so that it serializes
correctly when `MapperFeature.CAN_OVERRIDE_ACCESS_MODIFIERS` is
disabled.

Fixes gh-26797
3 years ago
Stephane Nicoll 5ac5038176 Merge branch '2.4.x' 4 years ago
Stephane Nicoll aea8597114 Merge branch '2.3.x' into 2.4.x 4 years ago
Stephane Nicoll 6490edc16d Polish 4 years ago
Andy Wilkinson b9abcba778 Merge branch '2.4.x'
Closes gh-26596
4 years ago
Andy Wilkinson ff45e4c418 Merge branch '2.3.x' into 2.4.x
Closes gh-26595
4 years ago
Andy Wilkinson 936c31c7a7 Prevent metrics failures from adversely affecting web responses
Fixes gh-24151
4 years ago
Stephane Nicoll d3c817b7ba Polish "Remove unnecessary throws declaration in tests"
See gh-26441
4 years ago
weixsun 8a2be288a3 Remove unnecessary throws declaration in tests
See gh-26441
4 years ago
Stephane Nicoll 367fd64c23 Merge branch '2.4.x'
Closes gh-26325
4 years ago
Stephane Nicoll c134c38a68 Merge branch '2.3.x' into 2.4.x
Closes gh-26324
4 years ago
Stephane Nicoll af70da0e92 Update copyright year of changed file
See gh-26321
4 years ago
Matthias Stock 6c8c735027 Fix typo in NamedContributors Javadoc
See gh-26321
4 years ago
Phillip Webb beaf03a008 Update copyright year of changed files 4 years ago
izeye e27c85698d Polish
See gh-26135
4 years ago
izeye 4987880afa Polish
See gh-25980
4 years ago
Phillip Webb f03f74ff0a Add Spring Data Repository metrics support
Add support for Spring Data Repository metrics by integrating with
Spring Data's new `RepositoryMethodInvocationListener` support.

Closes gh-22217
4 years ago
Phillip Webb 9f16491535 Rework @Timer annotation support
Rework existing `@Timer` annotation support to remove duplicate code
and offer general purpose utilities that can be used in future metrics
support.

See gh-23112
See gh-22217
4 years ago
Phillip Webb 3d7e5e3abd Polish 4 years ago
Phillip Webb 15fe41868e Polish 'Support @Timed annotation for WebFlux'
Extract common method logic to a `HandlerMethodTimedAnnotations`
utility class and also add some caching. Also move the test code
into a single class.

See gh-23112
4 years ago
anshlykov 4ff4a9b082 Support @Timed annotation for WebFlux
Update `MetricsWebFilter` to support `@Timed` annotations on the WebFlux
handler methods or beans.

See gh-23112
4 years ago
Phillip Webb e4164d0143 Fix package tangle in endpoint package
Fix package tangle in the actuator endpoint package by relocating a
few classes.

The `Producible` and `ProducibleOperationArgumentResolver` classes have
been moved from `endpoint.annotation` to `endpoint` since they aren't
directly tied to annotations.

The `ApiVersion` class has been moved from `endpoint.http` to
`endpoint` since it needs to implement `Producible` and isn't really
tied to HTTP.

Closes gh-25914
4 years ago
Phillip Webb 807ea1af0d Update copyright year of changed files 4 years ago
Stephane Nicoll b11602aeaa Polish "Add Quartz actuator endpoint"
This commit reworks the initial proposal so that jobs and triggers are
treated as first class concepts.

`/actuator/quartz` now returns the group names for jobs and triggers.

`actuator/quartz/jobs` returns the job names, keyed by the available
group names, while `/actuator/quartz/triggers` does the same for
triggers.

`/actuator/jobs/{groupName}` provides an overview of a job group. It
provides a map of job names with the class name of the job.
implementation

`/actuator/triggers/{groupName}` provides an overview of a trigger
group. There are five supported trigger implementations: cron, simple,
daily time interval, calendar interval, and custom for any other
implementation. Given that each implementation has specific settings,
triggers are split in five objects.

`/actuator/jobs/{groupName}/{jobName}` provides the full details of a
particular job. This includes a sanitized data map and a list of
triggers ordered by next fire time.

`/actuator/triggers/{groupName}/{triggerName}` provides the full details
of a particular trigger. This includes the state, its type, and a
dedicate object containing implementation-specific settings.

See gh-10364
4 years ago
Vedran Pavic 9795061360 Add Quartz actuator endpoint
See gh-10364
4 years ago
Stephane Nicoll dd916f908f Merge branch '2.4.x'
Closes gh-25880
4 years ago
izeye 852e5778a3 Polish
See gh-25875
4 years ago
Brian Clozel 72a1eb6384 Allow to manually tag request metrics with exceptions
Prior to this commit, some exceptions handled at the controller or
handler function level would:

* not bubble up to the Spring Boot error handling support
* not be tagged as part of the request metrics

This situation is inconsistent because in general, exceptions handled at
the controller level can be considered as expected behavior.
Also, depending on how the exception is handled, the request metrics
might not be tagged with the exception.
This will be reconsidered in gh-23795.

This commit prepares a transition to the new situation. Developers can
now opt-in and set the handled exception as a request attribute. This
well-known attribute will be later read by the metrics support and used
for tagging the request metrics with the exception provided.

This mechanism is automatically used by the error handling support in
Spring Boot.

Closes gh-24028
4 years ago
Andy Wilkinson 03e92d794b Merge branch '2.4.x'
Closes gh-25845
4 years ago
Andy Wilkinson 0e4b66a3ea Merge branch '2.3.x' into 2.4.x
Closes gh-25844
4 years ago
Andy Wilkinson 1a84b0610e Align PushGatewayManager's exception handling with PushMeterRegistry's
Previously, would log an error for any exception and also stop
publishing for an UnknownHostException. By constrast, Micrometer's
PushMeterRegistry treats all exceptions the same, logging a warning
and continuing with subsequent push attempts.

This commit updates the push gateway manager's behaviour to match
PushMeterRegistry. UknownHostExceptions no longer receive special
treatment and push (and delete) failures are now logged as warnings
rather than errors.

Fixes gh-25804
4 years ago
Phillip Webb 8c31d29acf Merge branch '2.4.x' 4 years ago
Phillip Webb a28a3ae090 Merge branch '2.3.x' into 2.4.x 4 years ago
Phillip Webb 9c8a97809d Consistent use of @deprecated since
Restore the patch version number for consistency with `@since`
tags.

See gh-25808
4 years ago
Andy Wilkinson d9ce30b15c Merge branch '2.3.x' into 2.4.x
See gh-25825
4 years ago
Andy Wilkinson 8b6eef6f1d Consistent use of @deprecated since
See gh-25808
4 years ago
Phillip Webb 44b1751bb4 Merge branch '2.4.x'
Closes gh-25826
4 years ago
Phillip Webb 363f5829d1 Merge branch '2.3.x' into 2.4.x
Closes gh-25825
4 years ago
Phillip Webb 26dd1b9a26 Update deprecations with for removal targets
Update all deprecation tags to include a removal target.

Closes gh-25808
4 years ago
Brian Clozel 61573fbf14 Record server metrics for cancelled connections
Prior to this commit, the Actuator instrumentation for WebFlux servers
would not record metrics in two cases:

* the client disconnects before the response has been sent
* a server timeout is triggered before the response is sent

This commit improves the existing instrumentation to record metrics in
these cases. Since the causes of timeouts/disconnections can vary a lot,
the chosen "outcome" tag for metrics is "UNKNOWN".

Closes gh-23606
4 years ago
Andy Wilkinson 9cc7f0b54d Generalize script-based DB initialization and add R2DBC initializer
See gh-24741
4 years ago
Phillip Webb 38584f0694 Merge branch '2.4.x'
Closes gh-25785
4 years ago
Phillip Webb 5274cf2459 Merge branch '2.3.x' into 2.4.x
Closes gh-25784
4 years ago
Phillip Webb 130cc5b036 Chain caught InvalidEndpointRequestExceptions
Update `AbstractWebMvcEndpointHandlerMapping` to chain any caught
InvalidEndpointRequestExceptions so that a more complete stacktrace
is available. The exception has also been updated to a
`ResponseStatusException` so that the reason can be propagated.

Fixes gh-25642
4 years ago
Andy Wilkinson 90b4ced7a6 Move DataSource init auto-config out of DataSourceAutoConfiguration
Previously, the auto-configuration for DataSource initialization and
the properties used to configure it were part of the general
DataSource auto-configuration and properties.

This commit moves the auto-configuration of DataSource initialization
out into a separate top-level auto-configuration class. Similarly,
the properties for configuring DataSource initialization have been
moved from `spring.datasource.*` into `spring.sql.init.*`.

The old initialization-related `spring.datasource.*` properties have
been deprecated but can still be used. When they are used, they new,
separate initialization auto-configuration will back off. In other
words, the initialization related `spring.datasource.*` properties
and the `spring.sql.init.*` properties cannot be used in combination.

Closes gh-25323
4 years ago
Phillip Webb 11a94ee6f0 Merge branch '2.3.x' into 2.4.x 4 years ago
Phillip Webb 82127fdaa3 Update copyright year of changed files 4 years ago
Andy Wilkinson ce3dfc5792 Merge branch '2.4.x'
Closes gh-25767
4 years ago
Andy Wilkinson 33cf8b3bc4 Merge branch '2.3.x' into 2.4.x
Closes gh-25765
4 years ago