query-patterns

Guides construction and interpretation of Honeycomb queries on trace and event datasets.

Updated Jun 4, 2026
One-click install
npx skills add https://github.com/krzko/pokemon-api --skill query-patterns-krzko
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: query-patterns
Source: https://github.com/krzko/pokemon-api/tree/main/.claude/skills/query-patterns
Command: npx skills add https://github.com/krzko/pokemon-api --skill query-patterns-krzko

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Writing effective Honeycomb queries requires knowing which operations, filters, and field patterns fit each investigation goal — using AVG instead of percentiles, missing relational field prefixes, or misreading heatmaps leads to wrong conclusions about latency, errors, and traffic. ## Core Features & Use Cases - Operation Selection Guidance: Maps investigation questions to the right VISUALIZE operations (P99 over AVG for latency, HEATMAP for distributions, CONCURRENCY for load, RATE_AVG for trends). - Relational Field Patterns: Explains root., parent., child., any., and none. prefixes for cross-span trace queries like finding slow endpoints caused by a specific downstream service. - Calculated Fields & Result Interpretation: Covers derived column syntax and anti-patterns, plus reading P99/P50 ratios, heatmap bands, TOTAL/OTHER rows, and parsing raw JSON via query_result_url. - Use Case: When asked to "find slow requests" or "show error rate by service", the skill directs building a filtered P99 query grouped by route, then interpreting the results and feeding query_run_pk into BubbleUp for outlier analysis. ## Quick Start Ask the assistant to show P99 latency by endpoint for the last two hours in Honeycomb and interpret whether the distribution is bimodal.

Frequently Asked Questions about query-patterns

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I query latency percentiles in Honeycomb?▼

Use P99 or P95 on duration_ms instead of AVG, which hides tail latency. Filter on is_root to measure user-facing latency, group by http.route or name, and combine COUNT, P99, and HEATMAP in one query for a complete picture.

What are relational fields in Honeycomb queries?▼

Relational prefixes (root., parent., child., any., none.) let filters and breakdowns reference other spans within the same trace. For example, any.service.name finds traces where a specific service participates, while none. excludes traces containing matching spans.

When should I use HEATMAP instead of a percentile in Honeycomb?▼

Use HEATMAP when you suspect a bimodal or multi-population distribution that single-number aggregates hide. A P99/P50 ratio above 10x is a signal to run HEATMAP to confirm two distinct latency bands.

Does this query guidance apply to Honeycomb metrics datasets?▼

No. This guidance covers trace and event datasets only; metrics datasets (dataset_type=metrics) are explicitly out of scope and should use a dedicated metrics-queries approach instead.

Why does my Honeycomb calculated field with EQUALS return no matches?▼

EQUALS uses strict type matching, so comparing an integer 200 against a string-typed status code silently returns false. Use find_columns to verify the field type, or normalize with INT() or STRING() casts before comparing.

How do I get raw JSON results from a Honeycomb query?▼

Each query result's metadata includes a query_result_json signed URL. Download it with curl or Python and parse with jq to access exact numeric values, full time series, and heatmap bucket counts beyond the ASCII rendering.