更新时间:2025-11-24 GMT+08:00
Php语言接入
限制条件
非侵入式接入,需使用PHP 8.0以及以上版本。
环境准备
- 准备插件/工具:PHP 8.0+、PECL、composer。
- 安装,命令如下:
apt update apt install -y php-pear apt install composer
- 环境验证,命令如下:
pecl version composer --version
示例demo
- 初始化demo应用。
- 编写应用代码。创建index.php文件,内容如下:
<?php use Psr\Http\Message\ResponseInterface as Response; use Psr\Http\Message\ServerRequestInterface as Request; use Slim\Factory\AppFactory; require __DIR__ . '/vendor/autoload.php'; $app = AppFactory::create(); $app->get('/rolldice', function (Request $request, Response $response) { $result = random_int(1,6); $response->getBody()->write(strval($result)); return $response; }); $app->run(); - 运行程序,命令如下:
php -S localhost:8080 & curl http://localhost:8080/rolldice
操作步骤
- 登录APM控制台。
- 单击左侧
,选择“管理与监管 > 应用性能管理 APM”,进入APM服务页面。 - 在左侧导航栏中选择“应用监控 > 应用列表”。
- 单击“接入应用”,进入接入应用页面。
- 选择“区域”和“应用”。单击“创建应用”,弹出“创建应用”弹窗,可以具体操作参见创建应用。
- “接入方式”选择OpenTelemetry。
- “服务端语言”选择Php。
- 数据接入,相关参数与操作步骤如下。
- 非侵入式接入
- 安装OpenTelemetry扩展组件。
- 安装必须构建工具,命令如下:
sudo apt-get install gcc make autoconf
- 使用构建安装扩展组件,命令如下:
pecl install opentelemetry pecl install grpc pecl install protobuf
- .将扩展名添加到您的php.ini文件中,内容如下:
[opentelemetry] extension=opentelemetry.so [PHP] extension=grpc.so extension=protobuf.so
- 验证扩展是否已安装并启用,内容如下:
php --ri opentelemetry php --ri grpc php --ri protobuf
- 安装必须构建工具,命令如下:
- 安装服务框架所需opentelemetry依赖包。
- 安装服务框架所依赖的opentelemetry自动插件包,比如slim框架需安装open-telemetry/opentelemetry-auto-slim,命令如下:
composer config allow-plugins.php-http/discovery false composer require open-telemetry/sdk composer require open-telemetry/exporter-otlp composer require open-telemetry/transport-grpc composer require open-telemetry/opentelemetry-auto-slim composer update
- 添加云服务配置参数到环境中并启动,命令如下:
env OTEL_EXPORTER_OTLP_ENDPOINT=接入地址 \ OTEL_EXPORTER_OTLP_HEADERS=Authentication=鉴权信息 \ OTEL_EXPORTER_OTLP_PROTOCOL=grpc \ OTEL_PHP_AUTOLOAD_ENABLED=true \ OTEL_SERVICE_NAME=应用名称.组件名称.环境名称 \ php -S localhost:8080 & curl http://localhost:8080/rolldice
- 安装服务框架所依赖的opentelemetry自动插件包,比如slim框架需安装open-telemetry/opentelemetry-auto-slim,命令如下:
- 在APM控制台链路追踪中查看应用的监控数据。详细操作参见指标。
- 安装OpenTelemetry扩展组件。
- 侵入式接入
参考官网:官网网站。
- 非侵入式接入
父主题: 接入OpenTelemetry