PHP

PHP A language-specific implementation of OpenTelemetry in PHP.

Você está visualizando a versão em versão em inglês desta página porque ela ainda não foi traduzida. Possui interesse em ajudar? Veja como contribuir.

Esta é a documentação do OpenTelemetry para a linguagem PHP. O OpenTelemetry é um framework de observabilidade – API, SDKs, e ferramentas que são desenvolvidas para auxiliar na geração e coleta de dados de telemetria de aplicações, como métricas, logs e rastros. Esta documentação foi criada para te auxiliar a entender como começar a utilizar o OpenTelemetry em PHP.

Estado e Lançamentos

O estado atual dos principais componentes funcionais do OpenTelemetry para PHP é o seguinte:

RastrosMétricasLogs
StableStableStable

Para lançamentos, incluindo a última versão, consulte a página de Lançamentos.

Further Reading

Requirements

OpenTelemetry SDK for PHP aims to support all officially supported PHP versions according to www.php.net/supported-versions, and support will be dropped for PHP versions within 12 months of that version going End of Life.

Auto-instrumentation requires PHP version 8.0+.

Dependencies

Some of the SDK and Contrib packages have a dependency on both a HTTP Factories (PSR-17) and a php-http/async-client implementation. You can find appropriate composer packages implementing given standards on packagist.org.

See http-factory-implementations to find a PSR-17 (HTTP factories) implementation, and async-client-implementations to find a php-http/async-client implementation.

Optional PHP extensions

ExtensionPurpose
ext-grpcRequired to use gRPC as a transport for the OTLP exporter
ext-mbstringMore performant than the fallback, symfony/polyfill-mbstring
ext-zlibIf you want to compress exported data
ext-ffiFiber-based context storage
ext-protobufSignificant performance improvement for otlp+protobuf exporting

ext-ffi

Fibers support can be enabled by setting the OTEL_PHP_FIBERS_ENABLED environment variable to true. Using fibers with non-CLI SAPIs may require preloading of bindings. One way to achieve this is setting ffi.preload to src/Context/fiber/zend_observer_fiber.h and setting opcache.preload to vendor/autoload.php.

ext-protobuf

The native protobuf library is significantly slower than the extension. We strongly encourage the use of the extension.

Setup

OpenTelemetry for PHP is distributed via packagist, in a number of packages. We recommend that you install only the packages that you need, which as a minimum is usually API, Context, SDK and an exporter.

We strongly encourage that your code only depend on classes and interfaces in the API package.


Getting Started

Get up and running with OpenTelemetry for PHP.

Instrumentation

Manual instrumentation for OpenTelemetry PHP

Using instrumentation libraries

Exporters

Context

Learn how the context API works in instrumented applications.

Propagation

Context propagation for the PHP API

Resources

SDK

API reference

Examples

Registry

Instrumentation libraries, exporters and other useful components for OpenTelemetry PHP