통사론
newrelic_is_sampled()
현재 트랜잭션이 샘플링된 것으로 표시되는지 여부를 나타내는 값을 반환합니다.
요구 사항
PHP 에이전트 버전 9.3 이상이 필요합니다.
트랜잭션 내에서 호출되어야 합니다.
설명
현재 트랜잭션이 샘플링된 것으로 표시되는지 여부를 나타내는 값을 반환합니다.
반환 값
분산 추적이 활성화되고 현재 트랜잭션이 샘플링된 것으로 표시된 경우 true
을 반환하고, 그렇지 않으면 false
을 반환합니다.
예
Zipkin과 함께 사용할 B3 헤더 채우기
Zipkin 소비자에게 전송되는 HTTP 헤더에 필요한 분산 추적 메타데이터를 추가합니다.
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");