LabHub

Blog

OSS Monitoring Stack 2026 Deep Dive — Replacing Datadog with SigNoz, Coroot, OpenObserve, Sentry, Grafana, Uptrace

한국어English日本語

Prologue — The Datadog bill and what comes after

A line from a Series B startup's 2025 quarterly review: "Last month's Datadog bill was $140k." The CTO turned the laptop around and the room went silent. That was 7% of revenue. Indexed logs were half of it, custom metrics 30%, APM hosts the rest. Cutting that by 90% over the next quarter became an OKR.

This scene plays out quarterly in mid-to-late stage SaaS shops. On one side: the Datadog/New Relic/Splunk SaaS matrix. On the other: an OSS observability scene that OpenTelemetry standardization has finally made viable. The 2026 answer is no longer "pick one of the two." It's a modular OSS stack that absorbs the core signals while keeping SaaS only where the marginal value is high.

This is an honest map of the 2026 OSS monitoring landscape.

Where each shines, why the storage backend decides everything, what OpenTelemetry permanently changed, and the true cost of self-hosting — with no illusions.


1. OpenTelemetry — The standard that changed everything

The single reason OSS observability got dangerous in 2026 is OpenTelemetry (OTel). Before it, every SaaS forced its own agent and your code lived inside that agent. Once you were tied to Datadog APM, escaping meant refactoring.

What OTel changed:

  1. Instrumentation is vendor-neutral. Emit metrics, traces, and logs via OTLP/gRPC in one format and the receiver — SigNoz, Datadog, Grafana — does not matter.
  2. Semantic conventions are standardized. Names like http.request.method, db.system, messaging.destination.name mean the same thing in every tool.
  3. Auto-instrumentation libraries matured. Python, Node, Java, Go, .NET, Ruby — all support zero-code instrumentation.
  4. OpenTelemetry Collector became the de facto router/filter/aggregator. Changing the receiver leaves the application code alone.

In 2024 OTel became a CNCF Graduated project. In 2025 the logs signal went GA. As of 2026 traces, metrics, logs, and exceptions are all stable. Profiling entered beta as OTel Profiles.

One-line takeaway: install OTel once and the backend becomes an interchangeable option. This is why every OSS tool is surviving simultaneously.


2. The 2026 OSS observability landscape at a glance

A comparison matrix first. Wide table — view sideways.

ToolPrimary signalsStorage backendStrengthsWeaknessesLicenseSweet spot
SigNozTraces, metrics, logs, exceptionsClickHouseOTel-native, unified UIClickHouse ops burdenMIT + some EnterpriseMid/large
CorootMetrics, traces (eBPF)Prometheus, ClickHouseZero instrumentation, auto topologyNo WindowsApache 2.0 + EnterpriseMid-size K8s
OpenObserveLogs, traces, metricsS3 + Parquet5%–30% storage costNewer UI, partial compatibilityAGPL-3.0Large log volume
Sentry self-hostedErrors, sessions, tracesPostgreSQL, ClickHouseBest error UXSelf-host policy riskFSL/BSLAll sizes
UptraceTraces, metrics, logsClickHouseEasy single-node bootstrapSmall communityAGPL-3.0Small/mid
Grafana stack5 separate toolsMixedLargest eco, LGTMFive-tool integration burdenAGPL-3.0All sizes

The real axis of this table is the storage backend. ClickHouse for compression and query speed, S3 + Parquet for cheap long retention, Prometheus TSDB optimized for metrics. The trade-off triangle returns below.


3. SigNoz — A genuine Datadog alternative

SigNoz started in 2021 as an OTel-native APM/logs/metrics tool. By 2026 it has 40k GitHub stars, SOC 2 Type II, and a follow-on Series A. Self-hosted is free (Community Edition); SaaS is priced per GB/CPU/host.

Tech stack:

Why ClickHouse? OLAP columnar DBs are a natural fit for observability. A single trace row has 30–80 attributes, and almost every query is "filter plus aggregate." Columnar engines read only required columns, LZ4 compression yields 8–12 times on average, and ClickHouse itself ingests hundreds of millions of rows per minute.

Key differentiators:

  1. Hop across traces, metrics, and logs in one UI — the same trace_id is embedded in all three signals. One click moves you.
  2. Exception signal — like Sentry, errors are grouped and aggregated independently.
  3. PromQL plus ClickHouse SQL — familiar to Grafana users, with SQL for deep analytics.
  4. Built-in tail-based sampling — preserving only errors and slow traces is a first-class feature.

Single-node docker-compose:

git clone -b main https://github.com/SigNoz/signoz.git
cd signoz/deploy
./install.sh
# Browser: http://localhost:3301

Kubernetes via Helm:

helm repo add signoz https://charts.signoz.io
helm install signoz signoz/signoz \
  --namespace platform \
  --create-namespace \
  --set otelCollector.replicaCount=3 \
  --set clickhouse.persistence.size=500Gi

Sizing guide:

Operational traps:


4. Coroot — Zero-instrumentation APM via eBPF

Coroot's goal is to start APM without changing a line of code. eBPF hooks TCP connections at the kernel level and classifies HTTP/gRPC/DB traffic automatically. It is attractive in environments where you have no time or no permission to bolt SDKs into every service — legacy Java, in-house PHP, Node.

Core architecture:

What eBPF catches:

  1. Service topology — automatic.
  2. SLO/SLI estimation — response time and error rate computed automatically.
  3. DB and message queue calls — Postgres, MySQL, Redis, Kafka protocol decoding.
  4. Per-container CPU and memory — via cgroup.
  5. Node network losses and retransmits — TCP statistics.

What eBPF cannot catch:

In 2026 Coroot's licensing is two-track. Core is Apache 2.0 OSS; AI-based RCA, SSO, and RBAC are Enterprise. The free self-host covers 80 percent of needs.

Kubernetes install:

helm repo add coroot https://coroot.github.io/helm-charts
helm install coroot coroot/coroot \
  --namespace coroot \
  --create-namespace \
  --set clickhouse.shards=1 \
  --set prometheus.retention=15d

Open the UI once and you suddenly see what is actually running in the cluster — that revelation is Coroot's real value. Zero instrumentation effort, instant visibility.

A great pattern: Coroot for the automatic baseline, then SigNoz or Sentry on top with manual instrumentation only where business context demands it.


5. OpenObserve — Rust plus S3 for petabytes at 5 percent cost

OpenObserve appeared in 2023 as a Rust-based logs/traces/metrics platform. By 2026 it has 16k GitHub stars, a Series A round, and an AGPL-3.0 license. Its biggest weapon is storage cost.

One benchmark line: for the same log volume, OpenObserve uses 140 times less storage than Elasticsearch and operates at 1/140 the cost of Splunk. How? S3 plus Parquet plus indexless full-text search.

Traditional log systems (Elasticsearch, Splunk):

  1. Index every field — disks explode.
  2. Cache indexes in memory — expensive instances required.
  3. Store on local disk — long-term cold storage requires a separate path.

OpenObserve's alternative:

  1. Indexless. Logs are compressed into Parquet and dropped straight into S3.
  2. In-memory bloom filters for the first pass, columnar scans for the actual match.
  3. S3 itself is effectively infinite + cheap + 11 nines of durability. Cold/hot tiering is automatic.

Trade-offs:

In 2026 OpenObserve supports:

Single-line docker boot:

docker run -d \
  -v $PWD/data:/data \
  -p 5080:5080 \
  -e ZO_ROOT_USER_EMAIL=admin@example.com \
  -e ZO_ROOT_USER_PASSWORD=admin \
  public.ecr.aws/zinclabs/openobserve:latest

Kubernetes plus S3 mode:

# values.yaml (Helm)
config:
  ZO_S3_BUCKET_NAME: my-o2-logs
  ZO_S3_REGION_NAME: us-east-1
  ZO_DATA_STREAM_TYPE: s3
ingester:
  replicaCount: 3
querier:
  replicaCount: 2

If you operate at petabyte scale and logs are the primary signal — security teams, fintechs, game studios — OpenObserve is the real answer. Compared with Loki plus S3, OpenObserve's single-tool integration lowers operational burden further.


6. Sentry self-hosted — Still the canon of errors, but policies wobbled

Sentry has been the de facto error-tracking standard since 2008. Self-host was free for a long time. Then 2024 happened.

As of May 2026 self-host is still alive. Monthly releases ship, and core features — Error, Performance, Profiling, Crons — are all included. But the operational burden is not light.

Self-host components:

That is 8 to 12 containers, 50 GB of disk as a starting line. A single node handles up to one million events per day without strain. Above that, Kafka and ClickHouse start to split out.

Install:

git clone https://github.com/getsentry/self-hosted.git
cd self-hosted
./install.sh
# Tune options like SENTRY_EVENT_RETENTION_DAYS=90 in .env

Three scenarios:

  1. Pure error tracking — Sentry self-host dominates. No OSS peer matches its grouping, trend, and release comparison UX.
  2. Errors plus full-stack observability — SigNoz wins for integration. Sentry-like exceptions are first-class signals in SigNoz too.
  3. Errors plus heavy cost pressure — when Sentry SaaS Developer or Team pricing is the pain point, self-host is the answer.

A common question: "Is Sentry OTel-compatible?" Partially yes. You can send OTel traces to Sentry (Performance signal), but errors still use the Sentry SDK as the canonical path. As of 2026, work to align OTel exception signals with Sentry grouping is underway.


7. Uptrace — Lightweight ClickHouse APM

Uptrace is a ClickHouse-backed OTel APM like SigNoz, but its virtue is starting light on a single node. AGPL-3.0, free self-host, paid SaaS.

Differences from SigNoz:

When you pick Uptrace:

When you go to SigNoz instead:

One-line docker:

docker run -d --name uptrace \
  -p 14317:14317 -p 14318:14318 \
  -v $PWD/uptrace.yml:/etc/uptrace/uptrace.yml \
  uptrace/uptrace:latest

Uptrace also bundles the OTel Collector in-process (Standalone mode). For teams new to OTel, this is the lowest barrier to entry.


8. Grafana stack — Biggest eco, most modular choice

The stack Grafana Labs has built since 2017 is the largest single OSS observability faction in 2026. By tool:

Strengths:

  1. Each tool deep in one signal. A great fit for teams with dedicated observability staff.
  2. Federated operation possible. Mimir here, Tempo there, Loki somewhere else.
  3. The Grafana dashboard ecosystem is enormous; visualizing anything is familiar.

Weaknesses:

  1. Operating five tools. Grafana is the unified UI but the backends are separate.
  2. Heavy on day one. A single docker-compose will not finish the job.
  3. Alerts and rules differ per tool. Standardization required.

When to pick the Grafana stack:

When SigNoz or Uptrace win instead:

Grafana Cloud's free tier is generous enough that "self-host vs Grafana Cloud" must always be on the comparison sheet. The 2026 free tier is 10k metric series, 50 GB logs, 50 GB traces, 14-day retention.


9. Storage backends — The real decision

Eighty percent of tool choice is backend choice. Three patterns split the market.

9.1 ClickHouse — Columnar OLAP

Used by: SigNoz, Uptrace, Sentry (via Snuba), Coroot (for traces).

Strengths:

Weaknesses:

9.2 S3 + Parquet — Indexless object storage

Used by: OpenObserve, Tempo, Loki (blocks), Mimir (blocks).

Strengths:

Weaknesses:

9.3 Prometheus TSDB — Time-series only

Used by: Prometheus, Mimir, Cortex, VictoriaMetrics.

Strengths:

Weaknesses:

Combination guide:


10. Datadog to SigNoz — A real migration

A reconstructed migration journal from a 50k-host SaaS in late 2025.

10.1 Starting state

10.2 Phased migration

Phase 1 — Abstract instrumentation (4 weeks)

Move to the OTel SDK. Prefer auto-instrumentation to minimize code changes. Manually add only business attributes.

Phase 2 — Dual backend (6 weeks)

The OTel Collector ships to Datadog and SigNoz simultaneously. SigNoz first in dev and staging, then a weekly rollout across production services. Validate data parity.

Phase 3 — SLO verification (4 weeks)

Rebuild critical alerts and dashboards in SigNoz. Confirm response time and error rate SLOs behave the same as Datadog Monitor. Give on-call time to get familiar with the SigNoz UI.

Phase 4 — Remove Datadog (2 weeks)

Cut over service by service. The last step is removing the Datadog Agent.

10.3 Results

10.4 Regrets


11. The honest cost of self-hosting

"OSS means free" is a lie. The honest cost model is this.

When self-host wins:

When SaaS wins:

Middle option: Grafana Cloud or SigNoz Cloud. OSS backends as a managed service. Bills hover at 30–50 percent of Datadog with the operational burden removed.


12. Anti-patterns to avoid

Long-accumulated traps.

  1. "Observability equals logs." Logs alone, without traces and metrics, make causal tracing impossible.
  2. Cardinality explosion — the moment user_id and request_id become labels, you are finished. Attributes only.
  3. Full throttle without sampling — 10k RPS with 100 percent trace retention? Disk explodes. Tail-based sampling keeps only errors and slow paths.
  4. Alert flood — 30 alerts per hour per person become noise. Use SLO-based alerts for things that actually matter.
  5. Single OTel Collector — single point of failure. DaemonSet plus Gateway, two tiers.
  6. No TTL — you only notice when disk is full. Set this in the first week of self-host.
  7. 200 dashboards — nobody looks at them. Five golden dashboards plus automatic alerts beats it.
  8. Deploying the tool without making instrumentation mandatory — the tool is in place but there is no data. Add instrumentation gates and CI validation.
  9. Ignoring OTel semantic conventions — a week later even you cannot find your own keys. Follow the conventions.
  10. All-in on one backend — when ClickHouse goes down, SigNoz, Sentry, and Uptrace all die. Separate.

13. Decision flowchart

Answer in order.

  1. Current monthly observability cost? Under $10k — keep SaaS.
  2. Do you have an SRE or observability lead? No — SaaS or managed (Grafana Cloud, SigNoz Cloud).
  3. Does compliance ban external transfer? Yes — self-host decision is made.
  4. Which signal dominates?
    • Unified traces+metrics+logs — SigNoz.
    • Logs dominate — OpenObserve or Loki.
    • Start zero-instrumentation via eBPF — Coroot.
    • Errors are the focus — Sentry self-host.
    • Lightweight single node — Uptrace.
    • Modular operation — Grafana stack.
  5. Three-year scale forecast? Petabyte logs likely — OpenObserve or Loki. Smaller — SigNoz.

14. Where the wind blows after 2026

Where OSS observability is heading.

Three-year forecast: OTel + S3-Parquet + ClickHouse + eBPF will be the de facto baseline OSS observability stack. Datadog and New Relic will still exist, but market share is likely to dip into the 30–40 percent range.


Epilogue — Self-host is a right and a responsibility

An old truth: observability is not insurance, it is product. Outsourcing that product's backend to SaaS is a legitimate choice; operating it yourself is a legitimate choice. Both cost something. SaaS in the form of a bill; self-host in the form of time and SRE salary.

The interesting thing about 2026 is that the option set genuinely expanded. OpenTelemetry broke vendor lock-in, ClickHouse and S3-Parquet bent the storage cost curve, and eBPF drove instrumentation effort toward zero. The result is that the era of "one tool does it all" is over and the era of modular tool composition has begun.

14.1 Adoption checklist

14.2 Anti-pattern summary

14.3 Next post preview

The next post is a deep dive on the OpenTelemetry Collector. DaemonSet vs Gateway, processors, filters, routers, real tail-based sampling implementation, Kafka backing, retries, DLQ. The real operational starting point for OSS observability lives there.


References

Comments

No comments yet.

Sign in to leave a comment