chuxiangqaz / x-request-id
对 lumen/laravel 项目 x-request-id 的包
dev-main
2021-12-22 08:11 UTC
Requires
- php: >=7.0
This package is auto-updated.
Last update: 2024-09-22 14:04:35 UTC
README
对 lumen/laravel 项目 x-request-id 的包
- 日志增加 request id
- HTTP/CLI/QUEUE 增加 request id
- 请求别的第三方服务增加 request id
- [] 响应增加 request id
快速使用
- 安装
composer require chuxiangqaz/x-request-id
- 使用
// vim bootstrap/app.php $app->register(\XRequestID\AppServiceProvider::class); $app->register(\XRequestID\Logging\LoggingProvider::class);
文档说明
1. 如何在请求别的第三方服务增加 request id
use GuzzleHttp\Client; $cof = [ 'options' => [ 'timeout' => 60.0, 'headers' => [ 'Content-type' => 'application/json', ], 'handler' => \App\MiddleWare::getHandlerStack(), 'debug' => true ], ]; $client = new Client($cof); $response = $client->get('http://httpbin.org/get');
2. queue 的日志的 requestID是什么样子呢
因为队列的request id 是针对单个消息的,因此不一样的消息 request id 不一样。形式全部如下: ${request_id}_${msg_id}
// 假设服务启动的时候
$requestId = '0bdff8095c8bf1b38775bf35547a1317';
// 从队列中拿取的消息id = 5cf41e52d71e8f9417c3c6de0741cf67
// 则我们全局的 request id, 以及日志中的:
$requestId = '0bdff8095c8bf1b38775bf35547a1317_5cf41e52d71e8f9417c3c6de0741cf67'