zyan / laravel-logs
一个记录laravel用户请求的日志中间件
Installs: 14 503
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Requires
- php: >=7.2
- laravel/framework: ^5.8|^6.0|^7.0|^8.0
Requires (Dev)
- brainmaestro/composer-git-hooks: ^2.7
- friendsofphp/php-cs-fixer: ^3.0
- mockery/mockery: ^1.2
- orchestra/testbench: ^6.0
- phpunit/phpunit: ^9.0
README
一个记录laravel用户请求的日志中间件
要求
- php >= 7.2
- Composer
安装
composer require zyan/laravel-logs -vvv
配置
然后去 config/logging.php
配置日志通道
return [ //... 'request' => [ 'enabled' => true, //是否启用 'channel' => ['stack'], //通道 'environment' => ['local','testing'] //环境 ] ];
中间件
请在 app/Http/Kernel.php
中添加默认的中间件
namespace App\Http; use Illuminate\Foundation\Http\Kernel as HttpKernel; use Zyan\LaravelLogs\Middleware\RequestLogs; //使用默认中间件 class Kernel extends HttpKernel { /** * The application's global HTTP middleware stack. * * These middleware are run during every request to your application. * * @var array */ protected $middleware = [ RequestLogs::class, //全局使用 //... ]; /** * The application's route middleware groups. * * @var array */ protected $middlewareGroups = [ 'web' => [ RequestLogs::class, //在web中使用 //... ], 'api' => [ RequestLogs::class, //在api中使用 //... ], ]; //... }
自定义
自已手动添加一个中间件
namespace App\Http\Middleware; use Closure; use Illuminate\Support\Facades\Log; use Zyan\LaravelLogs\Logs; class RequestLogs { public function handle($request, Closure $next) { $response = $next($request); try { $logs = new Logs(); $logs->request()->response($response)->write(); //按需配置你需要记录的信息 //->request() 记录请求信息s //->response($response) 记录返回日志 //->write() 执行写入 }catch (\Exception $e){ Log::error($e->getMessage().' '.$e->getFile().":".$e->getLine()); } return $response; } }
暂不支持sql日志 需要记录sql查询移步 https://github.com/overtrue/laravel-query-logger
参与贡献
- fork 当前库到你的名下
- 在你的本地修改完成审阅过后提交到你的仓库
- 提交 PR 并描述你的修改,等待合并