Package Data | |
---|---|
Maintainer Username: | WHQa1028 |
Maintainer Contact: | boscowu1028@gmail.com (bosco) |
Package Create Date: | 2020-06-24 |
Package Last Update: | 2020-06-24 |
Language: | PHP |
License: | MIT |
Last Refreshed: | 2024-11-22 03:14:54 |
Package Statistics | |
---|---|
Total Downloads: | 9 |
Monthly Downloads: | 1 |
Daily Downloads: | 0 |
Total Stars: | 1 |
Total Watchers: | 2 |
Total Forks: | 0 |
Total Open Issues: | 0 |
基于Laravel和Lumen框架的调试日志组件.
安装组件:
$ composer require boscowu/laravel-tracelog
Laravel 默认自动加载 TraceLogServiceProvider::class
使用 Lumen, 需要添加 service provider 到 bootstrap/app.php
文件里.
$app->register(boscowu\TraceLog\TraceLogServiceProvider::class);
配置文件的作用在于指定个性化的日志格式标识名称
在项目根目录下执行以下命令
php artisan vendor:publish --provider="boscowu\TraceLog\TraceLogServiceProvider"
复制config文件至项目的config目录中
cp vendor/boscowu/trace-log/config/tracelog.php config/tracelog.php
在 tracelog.php
配置文件中配置日志格式名称
// tracelog.php
<?php
return [
//填写你的laravel项目中config/logging.php配置文件里channels数组下的日志格式名称
'channel' => null, //默认null
//trace-id的前缀设置
'prefix' => 'TraceLog:'
];
// logging.php
<?php
return [
'channels' => [
'stack' => [ //填写此名称
'driver' => 'stack',
'channels' => ['daily'],
],
'single' => [ //填写此名称
'driver' => 'single',
'path' => storage_path('logs/lumen.log'),
'level' => 'debug',
],
'daily' => [ //填写此名称
'driver' => 'daily',
'path' => storage_path('logs/lumen.log'),
'level' => 'debug',
'days' => 14,
],
];
在Laravel | Lumen中可以添加中间件boscowu\TraceLog\Middleware\TraceLogMiddleware::class
可在日志中查找到request直至response的请求返回内容,同时response的header头中有返回Trace-id
以便日志可以根据 Trace-id
进行查询
在以上操作结束后可在代码任意地点使用日志功能
function something()
{
//打日志
TraceLog::log('token1-1', $token);
//如果设置了中间件trace-id为中间件生成的结果为查询依据
TraceLog::log('token1-2', $token);
}