open-telemetry / opentelemetry-propagation-cloudtrace
CloudTraceContext propagator extension for OpenTelemetry PHP.
Requires
- php: ^8.1
- open-telemetry/api: ^1.0
- open-telemetry/context: ^1.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3
- open-telemetry/sdk: ^1.0
- phan/phan: ^5.0
- phpstan/phpstan: ^1.1
- phpstan/phpstan-phpunit: ^1.0
- phpunit/phpunit: ^9.5
- psalm/plugin-phpunit: ^0.19.2
- vimeo/psalm: ^4|^5|^6
README
This is a read-only subtree split of https://github.com/open-telemetry/opentelemetry-php-contrib.
OpenTelemetry CloudTrace Propagator
CloudTrace is a propagator that supports the specification for the header "x-cloud-trace-context" used for trace context propagation across service boundaries. (https://cloud.google.com/trace/docs/setup#force-trace). OpenTelemetry PHP CloudTrace Propagator Extension provides option to use it bi-directionally or one-way. One-way does not inject the header for downstream consumption, it only processes the incoming headers and returns the correct span context. It only attaches to existing X-Cloud-Trace-Context traces and does not create downstream ones.
Installation
composer require open-telemetry/opentelemetry-propagation-cloudtrace
Usage
For one-way CloudTrace:
$propagator = CloudTracePropagator::getOneWayInstance();
For bi-directional CloudTrace:
$propagator = CloudTracePropagator::getInstance();