newrelic_create_distributed_trace_payload

newrelic_create_distributed_trace_payload()
Creates a distributed trace payload.

Requirements

Requires PHP agent version 8.4 or higher.

Description

Distributed tracing allows you to see the path that a request takes as it travels through a distributed system.

With PHP agent version 9.10 or higher, the following JSON functions are now considered deprecated and will be removed in a future release:

newrelic_create_distributed_trace_payload()

newrelic_accept_distributed_trace_payload($payload)

newrelic_accept_distributed_trace_payload_httpsafe($payload)

Instead, use the API that is compatible with W3C Trace Context support, added in agent version 9.8. With this, the API for manually instrumenting applications has changed from the JSON payload related functions to the following header array forms:

newrelic_insert_distributed_trace_headers($outbound_headers)

newrelic_accept_distributed_trace_headers($inbound_headers)

Return value(s)

This method returns an object of type newrelic\DistributedTracePayload.This object has two methods that will render a distributed trace payload as text.

$payload = newrelic_create_distributed_trace_payload();
// renders the payload as a JSON string
$jsonText = $payload->text();
// renders the payload as an string suitable for transport via HTTP (query string, POST param, HTTP headers, etc.)
$httpSafeString = $payload->httpSafe();

Example(s)

For examples of how and when to use this API method, see the documentation to manually instrument applications and services.

For more help

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