Laravel电子邮件记录通道

问题描述 投票:0回答:1

我有一个Laravel 5.6项目,我想配置它,以便通过电子邮件向我发送高级错误。我已经在logging.php配置文件中添加了一个电子邮件通道,并将Monolog的Swiftmailer指定为处理程序,但由于它在构造函数中需要一个邮件程序实例和消息,因此我不知道应该提供哪些值。任何帮助深表感谢。

PS:我知道有这个目的的包,但认为这应该很简单,可以手动完成。

'email' => [
    'driver' => 'monolog',
    'handler' => Monolog\Handler\SwiftMailerHandler::class,
    'handler_with' => [
        'mailer' => ?,
        'message' => ?,
    ],
],
php laravel logging laravel-5.6 swiftmailer
1个回答
0
投票

可能有点晚,但是从Symfony SwiftMailer documentation你应该使用这样的东西:

...
'email' => [
    'driver' => 'monolog',
    'level' => 'critical',
    'handler' => SwiftMailerHandler::class,
    'handler_with' => [
        'mailer' => (new Swift_SmtpTransport(env('MAIL_HOST'), env('MAIL_PORT'), env('MAIL_ENCRYPTION')))
            ->setUsername(env('MAIL_USERNAME'))
            ->setPassword(env('MAIL_PASSWORD')),
        'message' => (new Swift_Message('[LOG] Exception'))
            ->setFrom([env('LOG_MAIL_FROM_ADDRESS') => env('LOG_MAIL_FROM_NAME')])
            ->setTo([env('LOG_MAIL_TO_ADDRESS') => 'Dev'])
            ->setBody('Here is the message itself')

    ],
    'formatter' => HtmlFormatter::class,
],
...

© www.soinside.com 2019 - 2024. All rights reserved.