入门指南
使用OpenTelemetry for PHP进行开发和运行。
This is the OpenTelemetry PHP documentation. OpenTelemetry is an observability framework – an API, SDK, and tools that are designed to aid in the generation and collection of application telemetry data such as metrics, logs, and traces. This documentation is designed to help you understand how to get started using OpenTelemetry PHP.
The current status of the major functional components for OpenTelemetry PHP is as follows:
Traces | Metrics | Logs |
---|---|---|
Stable | Stable | Stable |
For releases, including the latest release, see Releases.
OpenTelemetry for PHP 要求最低的PHP版本是 7.4,并且自动仪表化需要版本 8.0+。
一些 SDK
和 Contrib
包依赖于 HTTP工厂 (PSR-17) 和 php-http/async-client 的实现。您可以在 packagist.org 上找到适当实现给定标准的Composer包。
请参阅 http-factory-implementations 以查找 PSR-17 (HTTP factories)
的实现,并参阅 async-client-implementations 以找到 php-http/async-client
的实现。
扩展 | 目的 |
---|---|
ext-grpc | 用于将gRPC作为OTLP输出器的传输方式 |
ext-mbstring | 比回退选择symfony/polyfill-mbstring 更高效 |
ext-zlib | 如果您想要压缩导出的数据 |
ext-ffi | 基于Fiber的上下文存储 |
ext-protobuf | OTLP+protobuf输出的_显著_性能改进 |
可以通过将环境变量 OTEL_PHP_FIBERS_ENABLED
设置为 true
来启用Fibers支持。在非CLI
SAPI中使用Fibers可能需要预加载绑定。实现这一目标的一种方法是将 ffi.preload
设置为 src/Context/fiber/zend_observer_fiber.h
并将 opcache.preload
设置为 vendor/autoload.php
。
原生protobuf库 的速度比扩展要慢得多。我们强烈建议使用扩展。
OpenTelemetry for PHP 通过 packagist 分发,有多个包可供选择。我们建议您仅安装所需的包,通常最低要求是 API
、Context
、SDK
和一个输出器。
我们强烈建议您的代码仅依赖于 API
包中的类和接口。