/uptrace

Open-source APM tool with support for distributed tracing, metrics, and logs

Primary LanguageGoOtherNOASSERTION

Distributed Tracing and Metrics using OpenTelemetry and ClickHouse

build workflow Chat

Uptrace is an open-source APM tool that supports distributed tracing, metrics, and logs. Uptrace uses OpenTelelemetry to collect data and ClickHouse database to store it.

Features:

  • OpenTelemetry tracing, metrics, and logs.
  • Email/Slack/PagerDuty notifications using AlertManager.
  • Spans/logs grouping.
  • SQL-like query language to aggregate spans.
  • Promql-like language to aggregate metrics.
  • Pre-built metrics dashboards.
  • Multiple users/projects via YAML config.

Why Uptrace?

  • Single UI for traces, logs, and metrics.
  • Efficient ingestion: more than 10K spans / second on a single core.
  • Excellent on-disk compression, for example, 1KB span can be compressed down to <40 bytes.
  • S3 storage support with ability to automatically upload cold data to S3-like storage.

Quickstart

FAQ

What is the license?

The Business Source License is identical to Apache 2.0 with the only exception being that you can't use the code to create a cloud service or, in other words, resell the product to others.

BSL is adopted by MariaDB, Sentry, CockroachDB, Couchbase and many others. In most cases, it is a more permissive license than, for example, AGPL, because it allows you to make private changes to the code.

In three years, the code also becomes available under Apache 2.0 license. You can learn more about BSL here.

Can I use Uptrace to monitor commercial or production-grade applications?

Yes, you can use Uptrace to monitor commercial applications and provide your employees access to the Uptrace app without obligations to pay anything.

Is the database schema stable?

Yes, but we are still making changes to the database schema and plan to switch to ClickHouse dynamic subcolumns when that feature is stable enough.

Contributing

See Contributing to Uptrace.