写了一个 Laravel/Lumen Trace Log 组件

介绍

地址 forecho/laravel-trace-log

主要提供的功能有:

  • 一个中间件:方便的记录接口请求和接口返回数据,方便 debug
  • 日志自动添加 traceid 方便追踪处理的上下文

安装

composer require forecho/laravel-trace-log

使用方法

中间件(可选)

修改 App\Http\Kernel.php 文件,添加 TraceLogMiddleware 中间件。

use Forecho\LaravelTraceLog\Middleware\TraceLogMiddleware;

protected $middlewareGroups = [
    // ...

    'api' => [
        // ...        
        'request.tracelog'
    ],
];


protected $routeMiddleware = [
    // ...    
    'request.tracelog' => TraceLogMiddleware::class
];

记录日志


use Forecho\LaravelTraceLog\TraceLog;

TraceLog::warning('This is a warning message.', ['foo' => 'bar']);
TraceLog::error('This is an error message.', ['foo' => 'bar']);
TraceLog::info('This is an info message.', ['foo' => 'bar']);
TraceLog::debug('This is a debug message.', ['foo' => 'bar']);

获取跟踪ID

use Forecho\LaravelTraceLog\TraceLog;

TraceLog::getTraceId();

Curl 请求

如果你想让下一个系统使用相同的trace_id,你需要将trace_id添加到你的请求头中

use Forecho\LaravelTraceLog\TraceLog;

$key = config('tracelog.trace_id_header_key');
$headers = [
  "$key: " . TraceLog::getTraceId(),
]
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 1

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!