Send traces to Tempo and expose metrics to Prometheus

Point the OTLP exporter at Tempo instead of Jaeger.

Enable the built-in /metrics endpoint by setting METRICS_SECRET: without
it LibreChat answers 401 and exposes nothing. Prometheus scrapes it with a
Bearer token from a dedicated job, since annotation-based discovery cannot
carry credentials.

A Kubernetes Secret is namespaced, so the same value must also exist as
`librechat-metrics` in the observability namespace — one side verifies the
token, the other presents it. secret.example.yaml documents the pairing;
the real secret.yaml stays gitignored.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Stéphane Tailland
2026-08-25 07:27:14 +02:00
parent 40c6e9d723
commit 6aad64903b
3 changed files with 22 additions and 1 deletions
+9
View File
@@ -19,3 +19,12 @@ stringData:
PLATFORM_LLM_LIBRECHAT_APIKEY: ""
LIBRECHAT_OIDC_CLIENT_SECRET: ""
OPENID_SESSION_SECRET: ""
# Enables the built-in Prometheus endpoint (/metrics on port 3080).
# Without it LibreChat answers 401. Prometheus scrapes it with
# `Authorization: Bearer <METRICS_SECRET>`: the SAME value must exist in the
# `librechat-metrics` secret of the observability namespace
# (see infra-observability/k8s/prometheus/). A Kubernetes Secret is
# namespaced, so the value has to be duplicated — one side verifies the
# token, the other presents it.
METRICS_SECRET: "CHANGE_ME_METRICS_SECRET_MIN_32_CHARS"