# ============================================================================= # otel-lgtm - OpenTelemetry Backend (Grafana, Prometheus, Tempo, Loki, Pyroscope) # ============================================================================= # Image: grafana/otel-lgtm # Docs: https://github.com/grafana/docker-otel-lgtm # ============================================================================= # -- Image Tag ----------------------------------------------------------------- OTEL_LGTM_VERSION=latest # -- Grafana Admin Credentials ------------------------------------------------- GF_ADMIN_USER=admin GF_ADMIN_PASSWORD=admin # -- Exposed Ports ------------------------------------------------------------- # Grafana dashboard EXPOSE_GRAFANA_PORT=3000 # OpenTelemetry Collector - OTLP gRPC (used by instrumented apps/services) EXPOSE_OTLP_GRPC_PORT=4317 # OpenTelemetry Collector - OTLP HTTP (used by instrumented apps/services) EXPOSE_OTLP_HTTP_PORT=4318 # Prometheus metrics UI EXPOSE_PROMETHEUS_PORT=9090 # Tempo HTTP query endpoint EXPOSE_TEMPO_HTTP_PORT=3200 # Pyroscope continuous profiling UI EXPOSE_PYROSCOPE_PORT=4040 # -- Verbose Container Logging ------------------------------------------------- # Set any of these to "true" to enable verbose logs for that component. # These are component-internal logs (not the application telemetry data). ENABLE_LOGS_GRAFANA=false ENABLE_LOGS_LOKI=false ENABLE_LOGS_PROMETHEUS=false ENABLE_LOGS_TEMPO=false ENABLE_LOGS_PYROSCOPE=false ENABLE_LOGS_OTELCOL=false # Override: enable ALL component logging at once ENABLE_LOGS_ALL=false # -- eBPF Auto-Instrumentation (OBI) ------------------------------------------ # Requires Linux kernel 5.8+ with BTF support. Also requires privileged mode # and host PID namespace. If enabled, uncomment the `cap_add`, `network_mode`, # and `pid` lines in docker-compose.yaml. ENABLE_OBI=false # -- External OTLP Forwarding -------------------------------------------------- # Forward telemetry to an external OTLP-compatible backend (e.g., Grafana Cloud). # Leave blank to send data only to the local LGTM stack. OTEL_EXPORTER_OTLP_ENDPOINT= OTEL_EXPORTER_OTLP_HEADERS= # -- Tempo MCP Server --------------------------------------------------------- # Enables the Tempo MCP server for AI tool integration (e.g., Cline, Claude Code). # Set to "--query-frontend.mcp-server.enabled=true" to enable. TEMPO_EXTRA_ARGS= # -- Per-Backend Extra CLI Args ----------------------------------------------- # Additional command-line flags for individual backends. # Example: PROMETHEUS_EXTRA_ARGS="--storage.tsdb.retention.time=90d" PROMETHEUS_EXTRA_ARGS= LOKI_EXTRA_ARGS= TEMPO_EXTRA_ARGS_V2= PYROSCOPE_EXTRA_ARGS= OTELCOL_EXTRA_ARGS=