This is a read-only subtree split of https://github.com/open-telemetry/opentelemetry-php-contrib.
Please read https://opentelemetry.io/docs/instrumentation/php/automatic/ for instructions on how to install and configure the extension and SDK.
Auto-instrumentation hooks are registered via composer, which will:
- create spans automatically for each async HTTP request that is sent
- add a
traceparentheader to the request to facilitate distributed tracing
The extension can be disabled via runtime configuration:
OTEL_PHP_DISABLED_INSTRUMENTATIONS=http-async-clientHeader capturing is disabled by default and can be enabled through environment variables or php.ini directives.
OTEL_INSTRUMENTATION_HTTP_CLIENT_CAPTURE_REQUEST_HEADERS=host,accept
OTEL_INSTRUMENTATION_HTTP_CLIENT_CAPTURE_RESPONSE_HEADERS=content-type,serverThe legacy options are still supported but may be deprecated in a future release:
OTEL_PHP_INSTRUMENTATION_HTTP_REQUEST_HEADERS=host,accept
OTEL_PHP_INSTRUMENTATION_HTTP_RESPONSE_HEADERS=content-type,serverotel.instrumentation.http.request_headers[]=host
otel.instrumentation.http.request_headers[]=accept
otel.instrumentation.http.response_headers[]=content-type
otel.instrumentation.http.response_headers[]=serverCaptured headers are added as span attributes using the http.request.header.<name> and http.response.header.<name> naming convention, with header names lowercased and hyphens replaced by underscores. The option values are case-insensitive.