{"slug": "trace-explorer", "title": "Trace Explorer", "summary": "SigNoz's Traces Explorer page offers developers four views — List View, Traces View, Time Series View, and Table View — for filtering, examining, and analyzing traces, where each trace is composed of spans representing a single unit of work in one service. The List View defaults to showing individual spans and lets users switch between All Spans, Root Spans, and Entrypoint Spans, add columns such as service.name, http_method, response_status_code, and event_type, and display up to 200 spans per page. The Time Series View exports chart data as csv (default) or jsonl, with duration values in milliseconds and series names matching the chart legend, while the AI Observability Explorer shows one row per AI trace with tokens, cost, and call counts filterable via queries like trace.total_tokens > 1000.", "body_md": "A trace is a recording of the path a request takes through your system — from the first service it hits to every downstream call it makes. Each trace is made up of spans, where each span represents a single unit of work in one service.\n\n## Prerequisites\n\n- This section assumes that your application is already instrumented. For details about how you can instrument your application, see the [Instrument Your Application](https://signoz.io/docs/instrumentation/) section.\n- This section assumes that you are familiar with the basics of monitoring applications.\n\n## Introduction\n\nThe Traces Explorer page in SigNoz enables developers to filter, examine, and analyze traces. There are four different views available in Traces Explorer which include:\n\nFor LLM and agent traces, the [AI Observability Explorer](https://signoz.io/docs/ai-observability-explorer/) shows one row for each AI trace, with tokens, cost, and call counts. You can also filter and aggregate on these trace totals, for example `trace.total_tokens > 1000`.\n\n### List View\n\nThe List View is the default view on the Traces Explorer page. It shows individual spans matching your filters.\n\n**Span Scope**\n\nUse the **All Spans / Root Spans / Entrypoint Spans** dropdown on the right to control which spans are shown:\n\n- **All Spans** — shows every span matching your filters, regardless of position in the trace.\n- **Root Spans** — shows only the top-level span of each trace (the span with no parent).\n- **Entrypoint Spans** — shows only the first span when a request enters a service from an upstream service, giving a high-level view of cross-service traffic.\n\n**Customize Columns**\n\nClick the **Options** button on the right side of the toolbar to add or remove columns from the list. For example, you can add `service.name`, `http_method`, `response_status_code`, or `event_type` to display alongside each span.\n\n**Number of Spans to display**\n\nYou can increase the number of spans displayed up to 200/page using the dropdown on the top right.\n\n### Traces View\n\nThe Traces View focuses on root spans — the starting span of each trace. Each row represents a single trace, showing the root service name, root operation name, root duration, number of spans, and Trace ID. Traces are sorted by descending root duration, which helps identify the longest running traces. You can increase the number of traces displayed up to 200/page using the dropdown on the top right.\n\n### Time Series View\n\nThe Time Series View provides a graphical representation of trace data over time.\n\n#### Download chart data\n\nClick the **download** icon on the right of the Time Series chart header to export the data behind the chart. A popover opens with a **FORMAT** selector offering **csv** (default) and **jsonl**. Choose a format and click **Export** to download the file.\n\nThe export mirrors what the chart shows:\n\n- **Series names match the chart legend** , including any custom legend format or group-by values.\n- **The value column carries the unit.** The value column header includes the human-readable Y-axis unit (for example,`value (ms)` ). Display-only formats such as`short` or`none` are omitted.\n- **Duration values are exported in milliseconds** to match what the chart displays, not the raw nanosecond values returned by the API. A`p99` latency query, for example, exports the same millisecond values you see on the chart.\n\nEach row also includes the timestamp, the query name, the series name, and one column per group-by label.\n\n### Table View\n\nThe Table View provides a tabular representation of the trace data.\n\n**Query Builder**\n\nBoth Time Series and Table views use the Query Builder for filtering, aggregation, and grouping. This lets you chart request rates or latency percentiles directly from trace data without needing a separate metrics pipeline. The Query Builder supports `count`, `avg`, `p99`, and more — with Group By, Having, Order By, and Limit. Refer to the [Query Builder documentation](https://signoz.io/docs/userguide/query-builder-v5/) for more details.\n\n## Missing Spans\n\nA span shows as missing when a collected span references a Parent Span ID that no other span in the trace matches. That parent span still exists in your system but never reached SigNoz, so the waterfall view shows a gap where it should sit. SigNoz marks these traces with a \"This trace has missing spans\" banner in the trace details view.\n\n[Tail sampling](https://signoz.io/docs/glossary/#tail-sampling), spans dropped in transit, and services that never export are the usual causes. For the full explanation and how to identify each cause, see [Why are some spans missing from a trace?](https://signoz.io/docs/traces-management/troubleshooting/faqs/#q-why-are-some-spans-missing-from-a-trace).\n\n## Export Spans and Traces\n\nThe **Download** button exports the current results to a file. It appears in the top-right controls of both the [List View](#list-view) and the [Traces View](#traces-view), next to the per-page dropdown.\n\nTo export your results:\n\n1. Apply the filters and span scope you want to export. The export honors your current filters and the selected time range.\n2. Click the **Download** icon in the top-right controls.\n3. In the popover, choose a **Format** and the**Number of Rows** to export.\n4. Click **Export** to download the file.\n\nThe popover offers the same options in both views:\n\n| Option | Choices | Default | \n|---|---|---|\n| **Format** | `csv` ,`jsonl` | `csv` | \n| **Number of Rows** | `10k` ,`30k` ,`50k` | `10k` | \n\n## Trace Matching\n\nTrace Matching lets you define multiple span queries and combine them with **trace-level operators** — going beyond single-span filtering to find spans based on their relationships within a trace. Click **Add Trace Matching** below the filter bar to open the multi-query input.\n\nEach query (A, B, C…) is a standard span filter. The **Expression** field combines them using trace operators:\n\n| Operator | Symbol | What it returns | \n|---|---|---|\n| Has Direct Child | `=>` | Spans from A that have a **direct child** matching B | \n| Has Descendant | `->` | Spans from A that are **ancestors** (at any depth) of B | \n| AND | `&&` | Spans from A in traces that **also contain** spans matching B | \n| OR | `\\|\\|` | **Union** of spans from both A and B | \n| NOT | `A NOT B` | Spans from A in traces that **do not contain** any spans matching B | \n\n**Example — Has Descendant:**\n\n- Query A: `service.name = 'frontend'`\n- Query B: `service.name = 'customer' AND has_error = true`\n- Expression: `A -> B`\n- **Result:** Returns frontend spans that are ancestors of erroring customer spans at any depth.\n\nFor full operator reference and more examples, see [Multi-Query Analysis](https://signoz.io/docs/querying/multi-query-analysis/).\n\n## Quick Filters\n\nThe Traces Explorer provides quick filtering of spans using various parameters on the left panel. Select a filter category to expand it, set values, and the view updates automatically.\n\n## Default Filters\n\n1. \n**Duration** :\n  - **Description** : Filter spans based on their duration.\n  - **Usage** : Specify a minimum and maximum duration in milliseconds to find spans that fall within this time range. This is useful for identifying spans that are unusually long or short.\n2. \n**Status** :\n  - **Description** : Filter spans by their status.\n  - **Usage** : Options can include`Error` and`Ok` . Use this filter to quickly identify spans that resulted in errors or were successful.\n3. \n**Service Name** :\n  - **Description** : Filter spans by the name of the service that generated them.\n  - **Usage** : Select from a list of service names to isolate spans from a specific service. This can be helpful in microservices architectures where multiple services generate spans.\n4. \n**Operation / Name** :\n  - **Description** : Filter spans based on the operation or name.\n  - **Usage** : Select specific operations, such as HTTP GET requests or SQL SELECT queries, to focus on particular types of operations within your spans.\n5. \n**RPC Method** :\n  - **Description** : Filter spans by the RPC method used.\n  - **Usage** : Useful for isolating spans based on the remote procedure call methods.\n6. \n**Status Code** :\n  - **Description** : Filter spans by their HTTP status code.\n  - **Usage** : Select from common status codes like`200` ,`404` ,`500` , etc., to find spans that resulted in specific HTTP responses.\n7. \n**HTTP Host** :\n  - **Description** : Filter spans by the HTTP host.\n  - **Usage** : Specify the host to find spans related to particular HTTP hosts.\n8. \n**HTTP Method** :\n  - **Description** : Filter spans by the HTTP method.\n  - **Usage** : Choose HTTP methods such as`GET` ,`POST` , etc., to filter spans based on the type of HTTP request.\n9. \n**HTTP Route** :\n  - **Description** : Filter spans by the HTTP route.\n  - **Usage** : Specify routes to find spans related to specific paths in your application.\n10. \n**HTTP URL** :\n  - **Description** : Filter spans by the full HTTP URL.\n  - **Usage** : Useful for isolating spans related to specific URLs, providing a more granular filter compared to HTTP routes.\n11. \n**Trace ID** :\n  - **Description** : Filter spans by their unique Trace ID.\n  - **Usage** : Enter a specific Trace ID to find and analyze an individual trace. This is particularly useful for deep dives into specific transactions.\n\nTo clear a filter, click **Clear All** next to the filter category. To reset all filters at once, use the Reset button at the top.\n\n### Adding Custom Quick Filters\n\nThe quick filters panel shows a set of default filters (like Duration, Service Name, HTTP Method, etc.), but you can add any span or [resource attribute](https://signoz.io/docs/glossary/#resource-attribute) as a custom quick filter.\n\nTo customize: click the **settings icon** at the top-right of the quick filters panel, then select **Edit quick filters**. This opens an editor showing your currently added filters and all other available attributes. Search for any attribute and add it to the panel.\n\n## Bottom Bar\n\nThe bar at the bottom of each view provides quick actions for saving views, creating alerts, and adding panels to a dashboard.\n\n- **Save this view** — preserves your current filter and query configuration as a named view for quick access later. Click**Save this view** , enter a descriptive label, and confirm. You can access saved views from the**Select a view** dropdown at the bottom of the Explorer or from the**Views** tab at the top of the page.\n- **Create an Alert** — instantly creates a[Trace based Alert](https://signoz.io/docs/alerts-management/trace-based-alerts/) based on the current filters.\n- **Add to Dashboard** — adds the current panel to a new or existing dashboard.\n\n### Managing Saved Views\n\nTo manage all your saved views, switch to the **Views** tab at the top of the page. From here you can:\n\n- **Update** : Make changes to a loaded view, then click**Update this View**\n- **Rename** : Search for the view and click the edit icon to change its label\n- **Delete** : Search for the view and click the delete icon to remove it\n\nIf you need help with the steps in this topic, please reach out to us on [SigNoz Community Slack](https://signoz.io/slack/). If you are a SigNoz Cloud user, please use in product chat support located at the bottom right corner of your SigNoz instance or contact us at [cloud-support@signoz.io](mailto:cloud-support@signoz.io).", "url": "https://wpnews.pro/news/trace-explorer", "canonical_source": "https://signoz.io/docs/userguide/traces", "published_at": "2026-09-29 00:00:00+00:00", "updated_at": "2026-09-29 12:48:35.401766+00:00", "lang": "en", "topics": ["ai-tools", "developer-tools", "mlops"], "entities": ["SigNoz", "Traces Explorer", "AI Observability Explorer"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/trace-explorer", "markdown": "https://wpnews.pro/news/trace-explorer.md", "text": "https://wpnews.pro/news/trace-explorer.txt", "jsonld": "https://wpnews.pro/news/trace-explorer.jsonld"}}