Documentation Index
Fetch the complete documentation index at: https://docs.emergence.ai/llms.txt
Use this file to discover all available pages before exploring further.
OpenTelemetry
All em-runtime services export traces, metrics, and logs via OpenTelemetry using the vendor-neutral OTLP protocol. The platform ships with built-in instrumentation — no application code changes are needed.Architecture
The OTLP collector is not included in the em-runtime Helm chart. Deploy your preferred collector separately. Any OTLP-compatible backend works: Grafana Cloud, Datadog, Splunk, New Relic, Honeycomb, or self-hosted.
OpenTelemetry vs Langfuse
These two observability systems are complementary, not overlapping:| OpenTelemetry | Langfuse | |
|---|---|---|
| Instruments | HTTP requests, DB queries, Redis, service health | LLM API calls (model, prompt, tokens, cost, quality) |
| Answers | ”Is the service healthy? Is it slow?" | "Is the AI producing good output? What does it cost?” |
| Integration | OTLP exporter (always active) | LiteLLM callbacks (when LANGFUSE_HOST is set) |
| Storage | PromQL-compatible metrics backend / Tempo / Loki | Langfuse’s own PostgreSQL + ClickHouse |
| Visualization | Grafana | Langfuse UI |
Configuration
Telemetry is controlled via environment variables in each service’senv block in the Helm values:
| Variable | Default | Description |
|---|---|---|
OTEL_ENABLED | "true" | Master switch for all telemetry. |
OTEL_EXPORTER_OTLP_ENDPOINT | "http://otel-collector:4317" | OTLP collector gRPC endpoint. |
OTEL_TRACES_ENABLED | "true" | Enable distributed tracing. |
OTEL_METRICS_ENABLED | "true" | Enable metrics export. |
OTEL_LOGS_ENABLED | "true" | Enable log record export via OTLP. |
OTEL_TRACE_SAMPLE_RATE | "1.0" | Trace sampling ratio (0.0-1.0). Default is 100%; override via Helm values for production. |
Point to Your Collector
Override the endpoint in your values file:Disable Telemetry
For test environments without a collector:Telemetry initialization is non-fatal. If the collector is unreachable, services log a warning and continue operating normally.
Auto-Instrumented Libraries
The following libraries are automatically instrumented with no code changes:| Library | What It Captures |
|---|---|
| FastAPI | Inbound HTTP request spans (excludes /health) |
| SQLAlchemy | Database query spans and connection metrics |
| Redis | Redis command spans |
| httpx | Outbound HTTP request spans (inter-service SDK calls) |
Telemetry Signals
Traces
Distributed traces follow the W3C Trace Context format. Traces propagate across service boundaries automatically via httpx instrumentation. Key trace fields:service.name— identifies the emitting servicehttp.method,http.url,http.status_code— HTTP span attributesdb.system,db.statement— database query detailstrace_id— correlates logs and traces
Metrics
Application metrics are exported via OTLP and include:- HTTP request duration histograms
- HTTP request counts by status code
- Database connection pool utilization
- Redis command latency
Logs
Structured JSON logs are written to stdout and optionally exported via OTLP:| Field | Description |
|---|---|
level | Log level (DEBUG, INFO, WARNING, ERROR) |
message | Log message |
timestamp | ISO 8601 timestamp |
service | Service name |
trace_id | W3C trace ID for log-trace correlation |
OTel Collector Configuration
Deploy the OpenTelemetry Collector to receive, process, and export telemetry data.Recommended Setup
Helm Installation
Metric Sources
| Source | Endpoint | Protocol |
|---|---|---|
| Application services (OTel) | OTLP gRPC (4317) / HTTP (4318) | OpenTelemetry |
| Keycloak | /keycloak/metrics (port 8080) | Prometheus exposition format |
| Kubernetes | kube-state-metrics, node-exporter | Prometheus exposition format |
| PostgreSQL | pg_exporter (optional) | Prometheus exposition format |
| Redis | redis_exporter (optional) | Prometheus exposition format |
Backend Options
- Self-Hosted (Grafana LGTM)
- Grafana Cloud
- Datadog
- AWS (CloudWatch)
| Component | Purpose |
|---|---|
| Prometheus | Metrics storage and querying |
| Grafana Tempo | Distributed trace storage |
| Loki | Log aggregation |
| Grafana | Dashboards and visualization |
| Alertmanager | Alert routing and notification |
Next Steps
Helm Configuration
Telemetry environment variables in Helm values.
Prerequisites
Infrastructure requirements for the observability stack.

