OpenObserve

OpenObserve

Observability in a single binary

Description

A full observability stack usually means Elasticsearch for logs, Prometheus for metrics, Jaeger for traces and Grafana stitched on top — several systems each needing a cluster, tuning and someone to watch it, with log storage that hurts the bill. The alternative, Datadog or Splunk, is an invoice you read nervously. OpenObserve (O2) folds that into one thing: logs, metrics, traces and frontend monitoring in one platform, backed by Parquet columnar storage over S3, cutting storage cost up to 140x below Elasticsearch.

It is a single Rust binary that is up in two minutes with no cluster to stand up first. Data lands directly in cheap object storage like S3, and with columnar compression and intelligent caching it stays both cheap and fast at petabyte scale. The web UI is unified: logs support full-text search, SQL and a visual query builder, and you build dashboards and alerts straight from log data; traces render as a flame-graph call waterfall; frontend RUM brings Core Web Vitals, error tracking and full session replay so you see exactly what a user did and where they stalled. Visual pipelines redact, reduce and convert logs to metrics at ingest without a separate tool. AGPL-3.0, with a cloud option too.

Features



One unified UI: logs, metrics, traces, RUM, dashboards, alerts, incidents and pipelines in a single web interface, not four or five tools to jump between.

Log management: full-text search, SQL queries, quick filters and a visual query builder search across all logs instantly, with dashboards and alerts built straight from log data.

Distributed tracing: call chains render as a waterfall/flame graph, with a service map to pin down which service and which hop is slow.

Frontend RUM and session replay: Core Web Vitals, error tracking, performance analytics and full session replay show what real users actually did.

Visual pipelines: a visual editor redacts, reduces and normalizes data at ingest, including logs-to-metrics conversion via VRL functions, with no external tool.

Cheap and easy to run: Parquet columnar storage with an S3-native design puts storage at 1/140 of Elasticsearch, and the Rust single binary is running in two minutes at petabyte scale.