Laravel Logging - 自定义频道不写

时间:2018-04-06 14:15:47

标签: php laravel

所以我正在运行Laravel 5.6,我正在尝试登录自定义文件(app / storage / logs / laravel.log除外)。我想在这个特定的位置创建一个日志:

app/storage/logs/auth/register.log

我将此添加到config / logging.php:

'default' => env('LOG_CHANNEL', 'stack'),
'channels' => [
       'stack' => [
        'driver' => 'stack',
        'channels' => ['single', 'auth'],
       ],
      'auth' => [
        'driver' => 'auth',
        'path' => storage_path('logs/auth/register.log'),
        'level' => 'debug',
        'days' => 30,
       ],

       ...

.env中指定的默认通道是:

LOG_CHANNEL=stack

然后我这样调用日志:

use Log;
Log::channel('auth')->debug('Some message');

但没有任何反应。我尝试在登录之前手动创建文件,但它也无法正常工作。我已经运行chmod 777 -R storage/但它没有帮助。我希望能够同时写入不同的频道。谁知道问题是什么?感谢。

1 个答案:

答案 0 :(得分:3)

正如评论中提到的 Ben 一样,问题在于这一行:

'driver' => 'auth',

来自Laravel的config / logging.php:

| Available Drivers: "single", "daily", "slack", "syslog",
|                    "errorlog", "custom", "stack"

将'auth'更改为'single'解决了问题。