Skip to main content

Tracing

Distributed trace analysis based on Tempo + Grafana Alloy visualizes the call path and latency of a request across multiple microservices, helping quickly locate cross-service performance bottlenecks and exceptions. Open it from "Tracing → Trace Analysis" in the left sidebar.

Trace Analysis

The top of the page contains three service-aggregated overview charts, and the bottom contains a searchable trace list:

Trace analysis

AreaDescription
Request RateRequest rate by service, colored by service
Error RateServer-side error rate by service, useful for finding abnormal services
P95 Latency95th percentile latency by service, used to identify slow services
Recent TracesRecent trace details (Trace ID/service/operation/start time/duration)
Top Service CallsMost frequent service-to-service calls and call rates, showing service dependencies intuitively

Search and Drill Down

The top of the list supports multi-dimensional filters:

  • Service: Filter by service.
  • Operation Keyword: Filter by operation name keyword.
  • Min Duration (ms): Show only traces whose duration exceeds the threshold to locate slow requests.
  • Error Filter: Show only traces with errors.
  • Trace ID: Paste a Trace ID directly to expand the waterfall below (span-level duration) for precise troubleshooting.

Click any Trace ID in the list to expand the complete request waterfall below and analyze the duration of each span across services:

Trace waterfall and service call relationship

Not Connected Yet?

Trace data is reported by the business side through OTLP. See Tracing Ingestion for the connection steps.

note

Tracing is intended for Kubernetes cluster deployment. Standalone (Docker Compose) deployment is not supported, so this page has no data in standalone scenarios.

Trace retention is controlled by ENV_TEMPO_RETENTION (30 days by default). See Environment Variables.