tzk/laravel-user-logger

一个将已记录用户的元数据注入到日志中的包

v1.0.0 2017-07-04 19:01 UTC

This package is auto-updated.

Last update: 2024-08-28 07:01:57 UTC


README

Laravel User Logger 是一个用于将特定用户数据附加到日志文件的包。它可以用来追踪哪个用户产生了异常,以帮助调试。

示例

#31 app\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(104): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#32 app\vendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php(150): Illuminate\Pipeline\Pipeline->then(Object(Closure))
#33 app\vendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php(117): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter(Object(Illuminate\Http\Request))
#34 app\public\index.php(53): Illuminate\Foundation\Http\Kernel->handle(Object(Illuminate\Http\Request))
#35 {main}  {"user":1}

如您所见,堆栈跟踪通过自定义属性 user 完成,显示了引发异常的用户 ID。

如果用户未登录,则将写入 匿名。否则,如果异常是在会话开始之前抛出的,则不会显示用户信息。

安装

首先使用 Composer 安装该包。

composer require tzk/laravel-user-logger

安装完成后,将服务提供者在您的 config/app.php 文件中添加

TZK\UserLogger\Providers\UserLoggerServiceProvider::class,

然后您需要在您的 app/Http/Kernel.php 文件中更改中间件

\Illuminate\Session\Middleware\StartSession::class

为此

\TZK\UserLogger\Http\Middlewares\StartSession::class

配置

默认情况下,该包使用您的 User 模型的主键。此行为可以通过发布包配置文件来覆盖。

php artisan vendor:publish --provider="TZK\UserLogger\Providers\UserLoggerServiceProvider"

此命令将在您的配置文件夹中创建一个 user_logger.php 配置文件,您可以在其中指定要在日志中显示的用户属性。