Stack Overview
How the observability stack is wired — telemetry emission, collection, the Victoria storage trio, and Grafana.
GENIE.AI is observable by default for production deployments: every application service emits OpenTelemetry telemetry (metrics, logs, traces), which a central collector funnels into a purpose-built storage trio and a Grafana front end. The result is a single pane where operators can see service health, search logs, trace a request end-to-end across the RAG pipeline, and get alerted before things break.
The stack is optional and disabled by default. Enable it per deployment with
ENABLE_OBSERVABILITY=1.
App services (Node.js, Python/OPEA, Kong)
│ OTLP traces/metrics ──┐
│ fluentd logs ─────────┤
▼ ▼
OpenTelemetry Collector (mode: global — one per node)
├── VictoriaMetrics (metrics) ─┐
├── VictoriaLogs (logs) ├─ Grafana (Kong /grafana/, Keycloak SSO)
└── VictoriaTraces (traces) ─┘
Three signals, three stores, one query layer. Each store is a single-node Victoria* binary — operationally simple, no separate cluster to run.
traceparent propagation, the RAG
pipeline span taxonomy, and PII filtering.mode: global
so logs from every node (gateway, genieai, gpu) are collected regardless of
where a service lands.How the observability stack is wired — telemetry emission, collection, the Victoria storage trio, and Grafana.
W3C traceparent propagation across the RAG pipeline, the span taxonomy, and automatic PII filtering.
The pre-built Grafana dashboards auto-provisioned for GENIE.AI, across application and observability folders.
Built-in Grafana alert rules, notification policies, and contact points that guard the GENIE.AI stack.
Environment variables, retention, sampling, and how to enable or disable the GENIE.AI observability stack.