When tracing is enabled, the SDK will attach an outgoing header called
sentry-trace to requests. This depends on the out of the box integrations we provide, but you can expect the header
sentry-trace to be present. If it's not, you can manually add
sentry-trace headers to any requests by learning more about its structure.
SDKs with performance monitoring support listen to incoming requests and typically automatically pick up the incoming
sentry-trace header to continue the trace (with the same
trace-id) from there, connecting backend and frontend transactions into a single coherent trace using the
trace_id value. Depending on the circumstance, this ID is transmitted either in a request header or in an HTML
<meta> tag. All your transactions that have the same
trace-id are connected. Linking transactions in this way makes it possible to navigate among them in sentry.io to better understand how the different parts of your system are affecting one another. You can learn more about this model in our Distributed Tracing docs.
If the instrumentation you are using doesn't automatically pick up the
sentry-trace header, you can also continue a trace manually by using the
continueFromHeaders function on a
Transaction, which you can learn more about in our content for the Transaction Interface.
For traces that begin in the mobile app, any requests made (and any requests your backend makes as a result) are linked through the request header
These integrations either generate or pick up and propagate the trace header automatically, as appropriate, for all transactions and spans that they generate.