fix(staging): backend startup crash + healthcheck + OTel routing #597
Reference in New Issue
Block a user
Delete Branch "feat/issue-580-sentry-backend"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Three staging regressions introduced by the observability stack, fixed together:
OTel BOM version mismatch —
opentelemetry-spring-boot-starter:2.27.0requiresopentelemetry-api:1.61.0but Spring Boot 4.0.0 only manages1.55.0(missingGlobalOpenTelemetry.getOrNoop()). Backend crashed at startup withNoSuchMethodError. Fixed by importingopentelemetry-bom:1.61.0via<dependencyManagement>before the Spring Boot BOM applies.Backend healthcheck on wrong port — Docker probe hit
localhost:8080/actuator/health(app port) but the management server is on8081. Every probe got a 404, the container was permanently marked unhealthy, and dependent services refused to start. Fixed by changing the probe tolocalhost:8081.OTel exporter falling back to localhost —
OTEL_EXPORTER_OTLP_ENDPOINTwas not injected in.env.staging, so the exporter used the CI-safe defaulthttp://localhost:4317instead ofhttp://tempo:4317. Fixed by adding the env var to the nightly env-file generation step.CI compose-idempotency network collision — Adding
name: archiv-netto the network definition caused the idempotency test to join any pre-existingarchiv-netleft by staging or a prior run.mcwould resolveminioto the staging container and fail with a signature mismatch. Fixed by making the network name configurable via${COMPOSE_NETWORK_NAME:-archiv-net}and injectingCOMPOSE_NETWORK_NAME=test-idem-archiv-netin the test's stub env file.Test plan
healthywithinstart_periodlocalhost:4317errors in backend logs)compose-idempotencyjob passes🤖 Generated with Claude Code