query_traces
Query distributed traces by service and time window to find latency outliers and error spans. Returns ranked summaries with p50/p95 aggregates.
Instructions
Query distributed traces for a service over a given timeframe. Returns ranked trace summaries (duration, span count, error status) with a p50/p95 aggregate across the returned set. When to use: investigate tail-latency outliers, walk call chains across services for a specific time window, or pull traces related to an anomaly that the metric/log tools surfaced first. Prerequisites: get the exact service name from list_services. A Tempo / Jaeger / OTLP connector must be configured. Behavior: read-only. filter accepts the backend's native query language (TraceQL on Tempo, tag query on Jaeger). When errorsOnly=true, only traces with at least one error span are returned. Default limit is 50.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| service | Yes | Service name (e.g. 'payment-service'). | |
| duration | No | Rolling time window, e.g. '5m', '1h'. Default '15m'. | |
| filter | No | Backend-native filter (TraceQL on Tempo, tag query on Jaeger). Optional. | |
| limit | No | Soft cap on returned trace summaries. Default 50. | |
| errorsOnly | No | If true, only traces with at least one error span. |