Skip to content

Osuite architecture

Every path into Osuite ends at the same place: OTLP arriving at your regional ingest endpoint over TLS. There are two sources of that OTLP:

  • Instrumented applications export directly using the OpenTelemetry SDK for their language.
  • The OpenTelemetry Collector receives OTLP from your services and collects logs and metrics from hosts and Kubernetes, then forwards everything on.

Both send to ingest.<region>.osuite.io:443, authenticated with the x-osuite-ingest-token header. On the way in, Osuite stores each signal, indexes it for search, and correlates it with the others by resource attributes and trace IDs (see Concepts). The stored, correlated data is what the UI, dashboards, and AI agents read from.

Your app (OTel SDK) ─┐
├─▶ ingest.<region>.osuite.io:443 (OTLP/TLS) ─▶ Osuite ─▶ UI · dashboards · AI agents
OTel Collector ──────┘

Osuite runs in independent regions. Your data lives in the region where your account was created, and every ingest endpoint is region-specific — telemetry is never routed across regions.

RegionIngest endpoint
USingest.us.osuite.io:443
Indiaingest.<region>.osuite.io:443

Keep <region> in your copy-paste config so the same snippet works in either region. In prose, the US host is ingest.us.osuite.io; the India slug is being finalised.

Osuite exposes two endpoints per region:

  • Ingest endpointingest.<region>.osuite.io:443, for OTLP telemetry from SDKs and Collectors. Authenticate with the x-osuite-ingest-token header carrying your ingest token.
  • API endpointhttps://api.<region>.osuite.io, used by the Osuite CLI and AI agents. Authenticate with your API key.

For the full list of regions, ports, headers, and ingest limits, see the OTLP endpoints reference.