• /
  • Log in

newrelic_is_sampled

Syntax

newrelic_is_sampled()

Returns a value indicating whether or not the current transaction is marked as sampled.

Requirements

Requires PHP agent version 9.3 or higher.

Must be called inside a transaction.

Description

Returns a value indicating whether or not the current transaction is marked as sampled.

Return values

Returns true if distributed tracing is enabled, and the current transaction is marked as sampled, otherwise false.

Examples

Populate B3 Headers for use with Zipkin

Adds necessary distributed tracing metadata to the HTTP headers being sent to a Zipkin consumer:

function make_http_request($url) {
$metadata = newrelic_get_trace_metadata();
$sampled = newrelic_is_sampled();
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'X-B3-TraceId: ' . $metadata['trace_id'],
'X-B3-SpanId: ' . substr(uniqid() . uniqid(), 0, 16),
'X-B3-ParentSpanId: ' . $metadata['span_id'],
'X-B3-Sampled: ' . $sampled));
return curl_exec($ch);
}
$status = make_http_request("zipkin-consumer.example");

For more help

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

Create issueEdit page
Copyright © 2021 New Relic Inc.