OpenObserve
Any OpenObserve instance works; these are the settings stacks projects depend on.
| Instance setting | Why |
|---|---|
ZO_CORS_ALLOWED_ORIGINS |
Every front-end origin (comma-separated). Browsers’ RUM requests are blocked otherwise |
| An organization per project | Keeps each project’s streams, dashboards and tokens apart |
| HTTPS | Browsers post RUM from HTTPS pages; the SDK only uses plain HTTP when the URL says http:// |
Per project, create the organization, then hand out two tokens:
- the ingestion token (IAM → Ingestion Tokens) to back ends, as
OPENOBSERVE_TOKEN; - a RUM token (Ingestion → RUM) to front ends, as
VITE_OPENOBSERVE_CLIENT_TOKEN.
Back ends send OTLP over HTTP to /api/<org>/v1/{traces,logs,metrics}; front
ends send to the RUM intake. Each back-end service writes to the stream named
after its OTEL_SERVICE_NAME.
Source-map upload (readable browser stack traces) needs OpenObserve Enterprise.
See OpenObserve for connecting a project.