Syntaxe
newrelic_get_trace_metadata()
Renvoie un éventail associatif contenant l'identifiant de la trace courante et le parent span.
Exigences
Nécessite l'agent PHP version 9.3 ou supérieure.
Doit être appelé à l'intérieur d'une transaction.
Description
Renvoie un éventail associatif contenant l'identifiant de la trace courante et le parent span. Ces informations sont utiles pour l'intégration avec des outils de tracing distribué tiers, tels que Zipkin.
Valeurs de retour
Un éventail associatif contenant les clés :
trace_id
: l'identifiant de trace en cours d'exécution. Une valeur vide sera renvoyée si la transaction ne prend pas en charge cette fonctionnalité ou si le tracing distribué est disabled.Returns :span_id
: l'identifiant de span en cours d'exécution. Une valeur vide sera renvoyée si la transaction ne prend pas en charge cette fonctionnalité ou si le tracing distribué est désactivé.
Exemples
Remplissez les en-têtes B3 pour une utilisation avec Zipkin
Ajoute le tracing distribué métadonnées nécessaire aux en-têtes HTTP envoyés à un consommateur Zipkin :
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");