This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch camel-4.10.x
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/camel-4.10.x by this push:
new 4610a58a9a5 CAMEL-21934: Additional Information Needed in
ContextHealthCheck message (#17656)
4610a58a9a5 is described below
commit 4610a58a9a5e3ddc17b3e6fef2dbb256b3050c18
Author: Luigi De Masi <[email protected]>
AuthorDate: Fri Apr 4 19:49:48 2025 +0200
CAMEL-21934: Additional Information Needed in ContextHealthCheck message
(#17656)
---
.../camel/impl/health/ContextHealthCheck.java | 37 +++++++++++++++++-----
1 file changed, 29 insertions(+), 8 deletions(-)
diff --git
a/core/camel-health/src/main/java/org/apache/camel/impl/health/ContextHealthCheck.java
b/core/camel-health/src/main/java/org/apache/camel/impl/health/ContextHealthCheck.java
index 9f7c9b29a62..aed5dc79c72 100644
---
a/core/camel-health/src/main/java/org/apache/camel/impl/health/ContextHealthCheck.java
+++
b/core/camel-health/src/main/java/org/apache/camel/impl/health/ContextHealthCheck.java
@@ -20,6 +20,7 @@ import java.util.Map;
import org.apache.camel.CamelContext;
import org.apache.camel.Ordered;
+import org.apache.camel.ServiceStatus;
import org.apache.camel.health.HealthCheckResultBuilder;
/**
@@ -50,16 +51,36 @@ public final class ContextHealthCheck extends
AbstractHealthCheck {
builder.unknown();
if (getCamelContext() != null) {
- builder.detail("context.name", getCamelContext().getName());
+ ServiceStatus status = getCamelContext().getStatus();
+ byte phase =
getCamelContext().getCamelContextExtension().getStatusPhase();
+ String name = getCamelContext().getName();
+
+ builder.detail("context.name", name);
builder.detail("context.version", getCamelContext().getVersion());
- builder.detail("context.status",
getCamelContext().getStatus().name());
- builder.detail("context.phase",
getCamelContext().getCamelContextExtension().getStatusPhase());
+ builder.detail("context.status", status);
+ builder.detail("context.phase", phase);
- if (getCamelContext().getStatus().isStarted()) {
- builder.up();
- } else {
- // not ready also during graceful shutdown
- builder.down();
+ switch (status) {
+ case Initializing:
+ case Initialized:
+ case Starting:
+ builder.message(
+ "Camel Context '" + name + "' is starting. Status:
'" + status + "', Phase: '" + phase
+ + "'. Please wait...");
+ builder.down();
+ break;
+ case Started:
+ builder.up();
+ case Stopping:
+ case Stopped:
+ case Suspending:
+ case Suspended:
+ builder.message("Camel Context '" + name + "' is shutting
down. Status: '" + status + "', Phase: '" + phase
+ + "'. Please check the debug log");
+ builder.down();
+ default:
+ builder.message("Camel Context '" + name + "' has unknown
Status: " + status);
+ builder.down();
}
}
}