signoz-writing-clickhouse-queries

par signoz

Utilisez cette compétence lorsque l'utilisateur demande des requêtes SigNoz impliquant :

npx skills add https://github.com/signoz/agent-skills --skill signoz-writing-clickhouse-queries

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.
  • Plain IN / JOIN whose subquery reads a distributed table: with distributed_product_mode='deny' it fails. Prefer the time-bounded fingerprint GLOBAL IN pattern or a local subquery table. Use GLOBAL JOIN only for a demonstrably small, bounded RHS; it broadcasts that dataset to every shard.
  • Adding a resource CTE when there is no resource attribute filter.
  • Omitting a non-aggregated projection from GROUP BY, including computed projections such as JSONExtractString(body, ...).
  • Logs query with $start_datetime or $end_datetime.
  • Traces query with $start_timestamp_nano or $end_timestamp_nano.
  • Logs query against signoz_logs.logs, bare logs, or distributed_logs; always use signoz_logs.distributed_logs_v2.
  • 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-writing-clickhouse-queries 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.

Plus de skills de signoz

signoz-explaining-dashboards
signoz
Cette compétence appelle les outils du serveur SigNoz MCP (signoz:signoz_get_dashboard, signoz:signoz_list_dashboards). Avant d'exécuter le workflow, confirmez que les outils signoz:signoz_* sont disponibles. S'ils ne le sont pas, le serveur SigNoz MCP n'est pas installé ou configuré — arrêtez-vous et dirigez l'utilisateur vers sa configuration : https://signoz.io/docs/ai/signoz-mcp-server/ . Ne devinez pas le contenu d'un tableau de bord à partir de son seul titre.
official
signoz-generating-queries
signoz
Cette compétence utilise intensivement les outils du serveur MCP SigNoz (signoz:signoz_execute_builder_query, signoz:signoz_query_metrics, signoz:signoz_search_logs, signoz:signoz_search_traces, signoz:signoz_aggregate_logs, signoz:signoz_aggregate_traces, signoz:signoz_get_field_keys, signoz:signoz_get_field_values, signoz:signoz_list_metrics, signoz:signoz_list_services, signoz:signoz_get_service_top_operations, signoz:signoz_get_trace_details). Avant d'exécuter le workflow, confirmez les...
official
signoz-clickhouse-query
signoz
Utilisez cette compétence lorsque l'utilisateur demande des requêtes SigNoz impliquant :
official
signoz-docs
signoz
Utilisez cette compétence en premier chaque fois que l'utilisateur pose des questions sur l'instrumentation SigNoz, la configuration OpenTelemetry, les requêtes, les tableaux de bord, les alertes, le dépannage, l'auto-hébergement…
official
signoz-searching-docs
signoz
Utilisez uniquement la documentation officielle de signoz.io et les références API. Basez chaque réponse sur le contenu des documents récupérés et citez l'URL canonique des documents.
official
signoz-clickhouse-query
signoz
Write ClickHouse queries for SigNoz dashboards over OpenTelemetry logs and traces. Use this skill whenever the user asks for SigNoz ClickHouse queries for logs…
official
signoz-docs
signoz
Use this skill first whenever the user asks about SigNoz instrumentation, OpenTelemetry setup, querying, dashboards, alerts, troubleshooting, self-hosted…
official
signoz-explaining-alerts
signoz
Décrire en langage simple ce que fait une règle d'alerte SigNoz existante — le signal qu'elle surveille, le seuil et le comportement d'évaluation, le routage des notifications,…
official