Skip to content

Introduction

import { Aside, Card, CardGrid } from ‘@astrojs/starlight/components’;

PulsusDB is an open source observability data platform for logs, metrics, traces, and profiles. It is written in Rust, stores durable data in ClickHouse, and uses the OpenTelemetry Collector as its primary ingestion path.

Most observability stacks make you operate separate databases for each signal or introduce a new query language. PulsusDB keeps the tools teams already know:

  • send logs, metrics, traces, and profiles with OpenTelemetry;
  • query metrics through the Prometheus HTTP API and PromQL;
  • query logs with LogQL;
  • query traces with TraceQL;
  • store and process the data in ClickHouse;
  • connect existing tools through optional compatibility endpoints.
Applications send telemetry through OpenTelemetry and PulsusDB to ClickHouse; query clients access it through PulsusDB.
The Collector handles telemetry transport while PulsusDB provides signal-specific ingest and query paths.

PulsusDB processes are stateless. ClickHouse holds all durable state and performs distributed storage and compute.

Mode Responsibility Start here?
all Ingestion, query, and rule evaluation in one process Yes — default for a first deployment
writer Protocol decoding, validation, batching, and ClickHouse inserts For independently scaled ingestion
reader Query APIs, language front ends, and SQL planning For independently scaled queries
Use the [Docker Compose quickstart](/getting-started/docker-compose/) to understand the components. Use the [Helm chart guide](/getting-started/helm/) and review its current limitations. Read [how the writer, reader, and ClickHouse schemas work together](/concepts/architecture/). Start with the [HTTP API reference](/reference/http-api/) and signal-specific query guides.