From 5ff7cfb9bb5fa316c06e0bd9b028342320d67d9a Mon Sep 17 00:00:00 2001 From: lingniu Date: Wed, 1 Jul 2026 12:11:14 +0800 Subject: [PATCH] docs: add health probe checks to runbook --- docs/operations/gb32960-service-split-runbook.md | 12 +++++++++++- .../PortainerComposeResourceLimitsTest.java | 12 ++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/docs/operations/gb32960-service-split-runbook.md b/docs/operations/gb32960-service-split-runbook.md index 45a356ae..8a5e5fac 100644 --- a/docs/operations/gb32960-service-split-runbook.md +++ b/docs/operations/gb32960-service-split-runbook.md @@ -167,13 +167,23 @@ java --sun-misc-unsafe-memory-access=allow \ ```bash curl -sS http://127.0.0.1:20100/actuator/health +curl -sS http://127.0.0.1:20100/actuator/health/liveness +curl -sS http://127.0.0.1:20100/actuator/health/readiness curl -sS http://127.0.0.1:20400/actuator/health +curl -sS http://127.0.0.1:20400/actuator/health/liveness +curl -sS http://127.0.0.1:20400/actuator/health/readiness curl -sS http://127.0.0.1:20500/actuator/health +curl -sS http://127.0.0.1:20500/actuator/health/liveness +curl -sS http://127.0.0.1:20500/actuator/health/readiness curl -sS http://127.0.0.1:20200/actuator/health +curl -sS http://127.0.0.1:20200/actuator/health/liveness +curl -sS http://127.0.0.1:20200/actuator/health/readiness curl -sS http://127.0.0.1:20300/actuator/health +curl -sS http://127.0.0.1:20300/actuator/health/liveness +curl -sS http://127.0.0.1:20300/actuator/health/readiness ``` -Expected: each endpoint returns `{"status":"UP"}` or an equivalent Spring Boot health JSON with top-level status `UP`. +Expected: each aggregate, liveness, and readiness endpoint returns `{"status":"UP"}` or an equivalent Spring Boot health JSON with top-level status `UP`. ## End-to-End Verification diff --git a/modules/apps/vehicle-history-app/src/test/java/com/lingniu/ingest/historyapp/PortainerComposeResourceLimitsTest.java b/modules/apps/vehicle-history-app/src/test/java/com/lingniu/ingest/historyapp/PortainerComposeResourceLimitsTest.java index c79fbf73..f9def0a4 100644 --- a/modules/apps/vehicle-history-app/src/test/java/com/lingniu/ingest/historyapp/PortainerComposeResourceLimitsTest.java +++ b/modules/apps/vehicle-history-app/src/test/java/com/lingniu/ingest/historyapp/PortainerComposeResourceLimitsTest.java @@ -68,6 +68,18 @@ class PortainerComposeResourceLimitsTest { } } + @Test + void productionRunbookChecksLivenessAndReadinessForActiveApps() throws IOException { + String runbook = Files.readString(repositoryRoot() + .resolve("docs/operations/gb32960-service-split-runbook.md")); + + for (String httpPort : List.of("20100", "20400", "20500", "20200", "20300")) { + assertThat(runbook) + .contains("curl -sS http://127.0.0.1:" + httpPort + "/actuator/health/liveness") + .contains("curl -sS http://127.0.0.1:" + httpPort + "/actuator/health/readiness"); + } + } + @Test void dockerEntrypointExecsJavaForSignalHandling() throws IOException { String dockerfile = Files.readString(repositoryRoot().resolve("Dockerfile"));