| title | Distributed tracing: Track requests across your microservices | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| tags |
|
||||||||||||||
| translate |
|
||||||||||||||
| metaDescription | What is distributed tracing? An intro to New Relic's distributed tracing feature. | ||||||||||||||
| redirects |
|
||||||||||||||
| freshnessValidatedDate | never |
Distributed tracing tracks and observes service requests as they flow through distributed systems.
Requests might pass through various services to reach completion, and these services could be in a variety of places: containers, serverless environments, virtual machines, different cloud providers, or on-premises. When you can see the path of an entire request across different services, you can quickly pinpoint failures or performance issues.
Distributed tracing collects data as requests travel from one service to another, recording each segment of the journey as a span. These spans contain important details about each segment of the request and are eventually combined into one trace. The completed trace gives you a picture of the entire request.
Here is an example of a web transaction where agents measure the time spent in each service. Agents then send that timing information to New Relic as spans, and the spans are combined into one distributed trace.As you scale distributed tracing, you might want more control over data volume. Partial granularity distributed traces provide controlled ingestion, allowing you to capture data that really matters while managing data volumes effectively. APM agents provide configurable controls to ingest data in a controlled manner while maintaining the visibility you need.
APM agent configuration helps you:
- Control ingestion by configuring span volume and attributes
- Fill instrumentation gaps with lightweight traces from all services
- Ingest control with more options to configure how many transactions to sample per minute for a service
You get three configuration options for partial granularity distributed traces:
- Option 1 (Span filtering): Reduce span count by removing in-process spans
- Option 2 (Span filtering + attribute reduction): Reduce data volume by removing in-process spans and limiting attributes
- Option 3 (Maximum reduction): Reduce data volume with span filtering, attribute reduction, and duplicate compression
These options work at the service level—you can use full distributed tracing for business-critical services while using span configuration for supporting services. For more information, see Control distributed tracing data volume.
See these distributed tracing topics:
