The only monitoring platform with native ClickHouse support →

ClickHouse monitoring

Purpose-built monitoring for ClickHouse OLAP workloads. Deep visibility into parts, merges, mutations, and query performance — the MergeTree internals that drive cluster stability.

Parts & Merges

Visibility into the MergeTree engine

ClickHouse performance is driven by part merges. Basira gives you full visibility into part lifecycle and merge health.

  • Part inventory

    Every part across your tables: row counts, bytes on disk, compression ratios, part type (wide/compact), and active status.

  • Merge levels

    Track merge depth across parts to understand if merges are keeping up with inserts or falling behind.

  • Compression analysis

    Understand how well your data compresses by table and column. Identify tables where codec changes could save storage.

Mutations

Track every ALTER and DELETE

Mutations in ClickHouse are asynchronous and can silently stall. Basira tracks them so you don't have to.

  • Running mutations

    All in-progress mutations, their target tables, and how many parts remain to be processed.

  • Completion tracking

    Know when mutations finish and whether they succeeded. Catch stuck mutations before they cause data inconsistency.

Server Metrics

System-level ClickHouse health

Monitor the metrics that matter for ClickHouse cluster stability and throughput.

  • Async inserts

    Track async insert buffer sizes, flush frequency, and failure rates. Ensure your ingest pipeline stays healthy.

  • Merge pool utilization

    Monitor background merge pool threads, active merges, and queue depth. Avoid merge bottlenecks that degrade query performance.

  • Memory and connections

    Track memory usage, active connections, and query concurrency across your ClickHouse instances.

Query Performance

Understand your OLAP workload

Basira reads from system.query_log to give you full visibility into every query executed against your ClickHouse cluster.

  • Execution time breakdown

    Query text, execution times, memory usage, read/written rows and bytes, exceptions, and query kind (SELECT, INSERT, ALTER).

  • Resource consumption

    Track memory usage and I/O per query to understand which queries are most expensive.

  • Historical trends

    See how query performance changes over time. Catch regressions from schema changes or data growth.

Active Query Monitoring

See everything running right now

Live view of all queries currently executing on your ClickHouse cluster via system.processes.

  • Live query list

    Every running query with elapsed time, memory usage, read rows/bytes, and written rows/bytes.

  • Resource tracking

    See which active queries are consuming the most memory and I/O in real time.

  • Long-running query detection

    Automatically flag queries that exceed configurable duration thresholds.

Replication

Monitor your replicated tables

Track replication health for ReplicatedMergeTree tables across your cluster.

  • Replication queue

    Monitor queue sizes, inserts lag, and merge status for replicated tables.

  • Replica sync status

    Know which replicas are in sync and which are falling behind. Catch issues before they affect query results.

Basira vs. DIY

ClickHouse monitoring vs. rolling your own Grafana dashboards

Most teams monitoring ClickHouse today glue together Grafana dashboards on top of system.query_log, system.parts, and system.metrics. It works — until it doesn't.

 Grafana + system tablesBasira
Setup timeDays to weeks — custom SQL, dashboard design, alert wiring~5 minutes — Helm install, read-only user, done
Required expertiseDeep knowledge of ClickHouse system tables and their version quirksNone — metrics and thresholds are built in
Part and merge monitoringPossible, but you write and tune the queriesOut of the box, with sensible default thresholds
Query fingerprintingManual normalization or raw query textAutomatic — grouped by fingerprint, not individual executions
Cost of querying system tablesYour cluster pays — heavy dashboards can compete with real workloadAgent collects at configurable intervals and ships to an external backend
Upgrade burdenYou maintain dashboards as ClickHouse versions changeAgent is updated centrally — your dashboards keep working
PostgreSQL in the same viewSeparate dashboards, separate data sourcesUnified — one tool, one price, every database

Rolling your own is a reasonable path for teams with deep ClickHouse expertise and time to invest. For everyone else, Basira gets you production-grade ClickHouse observability without the dashboard-maintenance tax. More context in our write-up on why the ClickHouse monitoring gap exists.

Agent Setup

Up and running in 5 minutes

A lightweight Go binary deployed via Helm. Connects to ClickHouse system tables with a read-only user.

  • Read-only access

    The agent connects with a ClickHouse user that has SELECT access on system tables only. It never modifies your data.

  • Engine auto-detection

    The agent auto-detects ClickHouse from the DSN. No manual engine configuration needed.

  • Minimal footprint

    Single binary, ~20MB memory. Polls at configurable intervals. Designed to be invisible on your server.

Start monitoring your ClickHouse cluster

Up and running in under 5 minutes. No credit card required.

Start Free Trial