【问题标题】:Laravel Logging - custom channel not writingLaravel Logging - 自定义频道未写入
【发布时间】:2018-09-16 14:31:00
【问题描述】:

所以我正在运行 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/,但它没有帮助。我希望能够同时写入不同的频道。任何人都知道问题是什么?谢谢。

【问题讨论】:

  • 'driver' => 'auth' no log driver called auth 除非你实现了它,否则请改用 singledaily 驱动程序。
  • 感谢@Ben,这很有效:)

标签: php laravel


【解决方案1】:

正如 Ben 在 cmets 中提到的,问题出在这一行:

'driver' => 'auth',

来自 Laravel 的 config/logging.php:

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-06-16
    • 2017-04-17
    • 1970-01-01
    • 1970-01-01
    • 2021-09-21
    • 2020-12-13
    • 2020-08-10
    相关资源
    最近更新 更多