Platform Deployment
Observability
This page describes what a deployed platform reports about itself: the backend’s Actuator endpoints, the OpenTelemetry agent in its image, and its logs. The Studio frontend has no telemetry of its own; its Next.js server logs to standard output.
Actuator Endpoints
The backend runs Spring Boot Actuator on its HTTP port, and the ingress routes /actuator to it
(Request Routing). It exposes two endpoints:
| Endpoint | Use |
|---|---|
|
The overall status. Elasticsearch, which is optional, and Neo4j, which the platform does not use, are
kept out of it (Server and Infrastructure), so a
missing Elasticsearch does not turn the status |
|
The Micrometer meters of the process, for ad-hoc inspection: JVM, process and system, HTTP server requests, the MongoDB driver’s commands and connection pool, executors and Logback. |
management.endpoints.web.exposure.include names prometheus as well, but the backend has no
Micrometer Prometheus registry on its classpath, so /actuator/prometheus answers 404.
Spring Boot adds the health groups liveness and readiness when it runs on Kubernetes, but neither
chart defines probes: Kubernetes replaces a pod when its process exits, not when its health turns
DOWN.
OpenTelemetry
The backend image bundles the OpenTelemetry Java agent 1.31 (backend/lib/opentelemetry-javaagent.jar,
copied to /app/lib). The backend chart attaches it and sets up the export through environment
variables of the Deployment:
| Variable | Value |
|---|---|
|
|
|
|
|
|
|
The Helm release name, |
Traces, metrics and logs of the backend therefore leave the pod over OTLP (gRPC, the default of this
agent version) to the collector service in the cluster’s default namespace. What happens to them
after that is cluster configuration outside this repository. A locally started backend runs without
the agent.
Prometheus
The backend chart renders a ServiceMonitor for /actuator/prometheus on the Service port named
http. The Service names its ports app and socketio, so the monitor matches no endpoint — and
without the Prometheus registry the path would answer 404 anyway. The backend’s metrics reach
monitoring through the OpenTelemetry agent only.
Logs
There is no Logback configuration in the repository: the backend logs to standard output in Spring
Boot’s default format, which is what kubectl logs shows, and the agent exports the same records. Lines
worth knowing:
-
At startup, whether the engine test identity of
test_agentis usable, malformed or not configured — never the value itself (Test Suites configuration). -
A warning when a startup index migration could not ensure its index; the reads it serves fall back to a slower plan.
-
The detail behind every generic error message an MCP tool returns (Errors).