chmonitor
Features

Metrics

Real-time and background-calculated server metrics, counters, and CPU profiling data from ClickHouse system tables.

See live server counters, background-calculated resource metrics, and per-processor CPU profiling — three views of server-level performance.

Prop

Type

What it does

The Metrics section exposes three views of server-level performance data.

Metrics queries system.metrics for live counters: active connections, threads, merges in flight, and hundreds of other real-time gauges. Values reset when the server restarts.

Async Metrics queries system.asynchronous_metrics, which are updated in the background on a schedule (not per-query). These include CPU load, memory usage, uptime, and OS-level stats. Useful for dashboards and alerting.

Profiler queries system.processors_profile_log to show CPU time broken down by query processor (pipeline step). Use it to find which stage of query execution is consuming the most CPU.

Pages

PageRouteWhat it showsSystem tables
Metrics/metricsLive server metrics and counterssystem.metrics
Async Metrics/asynchronous-metricsBackground-calculated resource metricssystem.asynchronous_metrics
Profiler/profilerCPU profiling data per query processorsystem.processors_profile_log

Using it

  • Open /metrics for live gauges — active connections, threads, in-flight merges. These reset on server restart.
  • Use /asynchronous-metrics for background-calculated resource stats (CPU load, memory, uptime, OS-level) suited to dashboards and alerting.
  • Open /profiler to break CPU time down by query processor and find the pipeline stage consuming the most CPU.

Permissions & access

All three pages share the metrics feature id.

CHM_FEATURE_METRICS_ACCESS=authenticated
CHM_FEATURE_METRICS_ENABLED=false
[features.metrics]
enabled = true
access = "authenticated"

Configuration

No feature-specific configuration. The profiler page requires system.processors_profile_log to be populated, which depends on <processors_profile_log> being enabled in the ClickHouse server config.

Notes & limitations

Profiler requires explicit enablement

system.processors_profile_log must be enabled in the ClickHouse server config via <processors_profile_log>. If it is absent, the Profiler page shows an empty state.

  • system.metrics values are live and reset on restart. They do not persist history. For trending, use system.asynchronous_metrics or system.metric_log (not yet surfaced in chmonitor).
  • Async metrics are recalculated on a server-defined interval (typically every few seconds); values may lag slightly behind real-time.

On this page