Architecture
CodeXray Observability is built on open standards and a horizontally scalable design. Telemetry flows in through OpenTelemetry, lands in purpose-built storage, and is served back through a unified query and alerting layer.
Data Flow
How It Works
1. Instrumentation
You instrument your applications and infrastructure using OpenTelemetry (SDKs for Java, .NET, Python, Node.js, Go) or CodeXray agents (eBPF node agent, DB agents, cluster agent, VM agent, Windows exporter, and browser/mobile RUM SDKs). All of them speak open, standards-based protocols — so your telemetry stays portable.
2. Ingestion
Telemetry is sent to CodeXray over OTLP (gRPC or HTTP), the standard OpenTelemetry protocol. The ingestion endpoint is the single place your applications, agents, and third-party exporters connect to.
3. Storage
Telemetry lands in two stores, each chosen for the job it does best:
- Traces, logs, events, and metrics are written to a purpose-built time-series store optimized for fast analytical queries over large volumes. This is the source of truth for dashboards, RED metrics, and correlation queries.
- Prometheus holds alert rules and handles continuous evaluation — it's dedicated to alerting, not long-term metric storage.
- An optional streaming buffer sits in front of storage to absorb ingestion spikes and decouple collection from writes.
4. Query & Correlation
The query layer unifies traces, logs, metrics, and infrastructure signals into a single correlated view. Dependency-aware service maps, RED metrics, and dependency breakdowns are all served from here. This is what the web UI talks to.
Alerting rules, notification routing, SSO, tenants, projects, and role-based access control each have dedicated pages — see Alerting and Authentication in the sidebar.
Deployment Footprint
At a high level, any CodeXray deployment has three logical planes:
| Plane | What lives here | Scales with |
|---|---|---|
| Data plane | Ingestion endpoint, streaming buffer | Telemetry volume (GB/day) |
| Storage plane | Time-series store, Prometheus, metadata | Retention window × volume |
| Access plane | Web UI, query layer, auth, alert engine | Active users & alert rules |
Each plane scales independently — for example, you can add ingestion capacity without expanding the storage cluster, and vice versa.
For concrete sizing at each tier, see Requirements.
Next Steps
- Instances Overview — the next category: the application detail view that sits on top of this data flow
- Log Monitoring — how the log ingestion path works end-to-end
- Distributed Traces — the trace investigation workflow the query layer surfaces