mcpField
S
signoz-clickhouse-query

signoz-clickhouse-query

github.com/signozData & databases19100 installsUpdated 6d ago
Repository

About signoz-clickhouse-query

signoz-clickhouse-query is a skill for writing ClickHouse queries for SigNoz dashboards. It guides users through selecting log or trace references, shaping queries for panel types, and validating the result.

Key features

  1. 01Log and trace request detection
  2. 02Signal-specific reference routing
  3. 03Timeseries, value, and table query patterns
  4. 04SigNoz schema and variable guidance
  5. 05Query attribution with SETTINGS
  6. 06Reference-based validation checklist

Use cases

  1. 01Building dashboard panels for logs
  2. 02Querying trace latency or errors
  3. 03Creating timeseries, stat, and table results
  4. 04Checking generated queries for common pitfalls

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/signoz/agent-skills --skill signoz-clickhouse-query

After installing, type/signoz-clickhouse-queryin Claude Code to confirm it loaded.

Bundled filesreferences/clickhouse-logs-reference.mdreferences/clickhouse-traces-reference.md

Details

From the project README

Writing ClickHouse Queries for SigNoz Dashboards

When to Use

Use this skill when the user asks for SigNoz queries involving:

  • Logs: severity, body text, log volume, structured fields, containers, services, or environments.
  • Traces: spans, latency, duration, p95 or p99, HTTP operations, DB operations, or error spans.
  • Dashboard panels: timeseries charts, value widgets, and table breakdowns.

If the user asks for a dashboard panel but does not mention ClickHouse, still use this skill.

Signal Detection

Identify whether the request is about logs or traces.

  • Logs: log lines, severity, body text, log volume, container logs, or structured log fields.
  • Traces: spans, latency, duration, p99, trace analysis, HTTP operations, DB operations, or error spans.

If the request is ambiguous, ask the user to clarify.

Reference Routing

Each reference covers table schemas, optimization patterns, attribute access syntax, dashboard templates, query examples, and a validation checklist.

Quick Reference

  • Timeseries panel: return rows of (ts, value) for a chart over time.
  • Value panel: return a single value for a stat or counter widget.
  • Table panel: return labelled columns for a grouped breakdown.

Key Variables by Signal

Logs
  • Timestamp type: UInt64 in nanoseconds.
  • Time filter: $start_timestamp_nano and $end_timestamp_nano.
  • Bucket filter: $start_timestamp and $end_timestamp.
  • Display conversion: fromUnixTimestamp64Nano(timestamp).
  • Main table: signoz_logs.distributed_logs_v2.
  • Resource table: signoz_logs.distributed_logs_v2_resource.
Traces
  • Timestamp type: DateTime64(9).
  • Time filter: $start_datetime and $end_datetime.
  • Bucket filter: $start_timestamp and $end_timestamp.
  • Display conversion: use the timestamp directly.
  • Main table: signoz_traces.distributed_signoz_index_v3.
  • Resource table: signoz_traces.distributed_traces_v3_resource.

Top Anti-Patterns

  • Missing ts_bucket_start BETWEEN $start_timestamp - 1800 AND $end_timestamp.
  • Using plain IN instead of GLOBAL IN on the resource fingerprint subquery.
  • Adding a resource CTE when there is no resource attribute filter.
  • Logs query with $start_datetime or $end_datetime.
  • Traces query with $start_timestamp_nano or $end_timestamp_nano.
  • Traces query with resources_string['service.name'] instead of resource_string_service$$name.

Query Attribution

Every generated query MUST end with a SETTINGS clause for monitoring:

SELECT ...
FROM ...
WHERE ...
SETTINGS log_comment = 'signoz-clickhouse-query skill | YYYY-MM-DD'

Replace YYYY-MM-DD with today's date (e.g., 2026-04-03). If the query already has a SETTINGS clause, append log_comment to it with a comma.

Workflow

  1. Detect the signal: logs or traces.
  2. Read the matching reference file before writing the query.
  3. Pick the panel type: timeseries, value, or table.
  4. Build the query using the required patterns from the reference.
  5. Append the SETTINGS log_comment attribution clause.
  6. Validate the result with the checklist in the reference.

Comments

Markdown supported