• /
  • Log in

Introduction to cross application traces

APM's cross application tracing lets you link transactions between your APM-monitored applications.

What is cross application tracing?

Important

Instead of using cross application tracing, we recommend our distributed tracing features. Distributed tracing is an improvement on the cross application tracing feature and is recommended for large, distributed systems.

APM's cross application traces link transactions between APM apps in your service-oriented architecture (SOA). This is useful, for example, to identify performance problems between your own application (the "calling" app) and any internal or external services (the "called" app), such as traffic to internal services.

This helps you to:

  • Spot bottlenecks in your cross application call flows.
  • Understand from end to end how specific transactions are used by other applications and services.
  • Diagnose problems faster and enhance collaboration across teams.

Security considerations

Cross application tracing relies on three HTTP headers in order to exchange information between the calling and called applications.

  • The first two (X-NewRelic-ID and X-NewRelic-Transaction) appear as HTTP request headers in outgoing requests sent by an instrumented application.
  • The remaining header (X-NewRelic-App-Data) is inserted into the HTTP response if the called application belongs to the same New Relic account as the calling application.

New Relic obfuscates all of these headers using an obfuscation scheme identical to what we use for browser monitoring, but with a different key.

HTTP header

Description

X-NewRelic-ID

(in request header)

Contains the account ID and application ID of the application making the call

X-NewRelic-Transaction

(in request header)

Contains information about an individual transaction created by the call (a GUID unique to the calling transaction, along with information about upstream calls that spawned the transaction)

X-NewRelic-App-Data

(in the response if applicable)

Contains information about the called application, including:

  • Account ID
  • Application ID
  • Name of the called transaction
  • Timing information for the called transaction
  • GUID of the called transaction

For more help

If you need more help, check out these support and learning resources:

Create issueEdit page
Copyright © 2021 New Relic Inc.