未使用自定义MAIL_LOG_CHANNEL

时间:2019-07-10 19:43:40

标签: php email logging laravel-5.8

我在laravel 5.8的邮件系统中遇到了一个问题。如文档所述,Mail & Local Development可以更改发送电子邮件的方式,使其将其写入日志文件。

因此,.envconfig/mail.php文件都有相应的选项。 因此,我在我的MAIL_LOG_CHANNEL文件中添加了一个.env键(原本不是该键),其键值为“ mail”,并将键MAIL_DRIVER的值更改为“ log” “。

很明显,我向config/logging.php添加了一个新频道:

[...]
'mail' => [
            'driver' => 'single',
            'path' => storage_path('logs/mail-'.php_sapi_name().'.log'),
            'level' => 'info',
        ],
[...]

无论我尝试什么,都从未将邮件写入单独的日志文件。我用正常的日志语句测试通道,没有任何问题。 我从MAIL_LOG_CHANNEL="mail"切换到MAIL_LOG_CHANNEL=mail,向config/mail.php的部分添加了默认值:

[before]
'log_channel' => env('MAIL_LOG_CHANNEL'),

[after]
'log_channel' => env('MAIL_LOG_CHANNEL', 'mail'),

在日志条目附近没有达到头发的宽度。

只有使用绝对基本配置,它才实际将邮件写入日志,但是使用此解决方案,会将其写入错误的日志文件中。

有人有想法吗?对我来说看起来很奇怪。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

我发现了为什么日志无法正常工作: 必须将level属性更改为“调试”。

之后,一切正常。

请参见https://laracasts.com/discuss/channels/laravel/custom-mail-log-channel-breaks-mail-driverlog?page=1#reply=523111

有关此问题的原始提示。

愿那能激怒某人:)

今天愉快。