本文介绍通过Zipkin将PHP应用的Trace数据接入到日志服务的操作步骤。
背景信息
操作步骤
修改functions.php文件中的配置项。
修改$httpReporterURL参数。
代码中的${endpoint}变量需根据实际情况替换。关于变量的详细说明,请参见变量说明。
$httpReporterURL = 'https://${endpoint}/zipkin/api/v2/spans';
表 1. 变量说明
变量
说明
示例
${endpoint}
日志服务Project的接入地址,格式为${project}.${region-endpoint},其中:
${project}:日志服务Project名称。
${region-endpoint}:日志服务Project所在地域的访问域名,支持公网和阿里云内网(经典网络、VPC)。更多信息,请参见服务入口。
test-project.cn-hangzhou.log.aliyuncs.com
在创建Zipkin\Reporters\Http时,增加headers参数。
代码中的变量需根据实际情况替换。关于变量的详细说明,请参见变量说明。
$reporter = new Zipkin\Reporters\Http( \Zipkin\Reporters\Http\CurlFactory::create(), ['endpoint_url' => $httpReporterURL, 'headers' => ['x-sls-otel-project' => '${project}', 'x-sls-otel-instance-id' => '${instance}', 'x-sls-otel-ak-id' => '${access-key-id}', 'x-sls-otel-ak-secret' => '${access-key-secret}'] ] );
表 2. 变量说明
变量
说明
示例
${project}
日志服务Project名称。
test-project
${instance}
Trace服务实例ID。更多信息,请参见创建Trace实例。
test-traces
${access-key-id}
阿里云账号AccessKey ID。
建议您使用只具备日志服务Project写入权限的RAM用户的AccessKey(包括AccessKey ID和AccessKey Secret)。授予RAM用户向指定Project写入数据权限的具体操作,请参见授权。如何获取AccessKey的具体操作,请参见访问密钥。
无
${access-key-secret}
阿里云账号AccessKey Secret。
建议您使用只具备日志服务Project写入权限的RAM用户的AccessKey。
无
安装依赖包。
composer install
启动服务。
composer run-frontend composer run-backend
访问服务,触发Trace数据发送。
curl http://localhost:8081