如何通过电子邮件发送Symfony中的控制台错误

时间:2018-08-26 10:32:28

标签: symfony symfony4

我已将我的应用配置为以这种方式发送电子邮件(prod/monolog.yaml):

monolog:
    handlers:
        main:
            type: fingers_crossed
            action_level: error
            handler: grouped
            excluded_404s:
                # regex: exclude all 404 errors from the logs
                - ^/
        grouped:
            type: group
            members: [nested, deduplicated]
        deduplicated:
            type: deduplication
            handler: swift
        swift:
            type: swift_mailer
            from_email: '%admin_notifier_from%'
            to_email: '%admin_notifier_to%'
            subject: 'Error'
            level: debug
            formatter: monolog.formatter.html
            content_type: text/html
        nested:
            type: stream
            path: "%kernel.logs_dir%/%kernel.environment%.log"
            level: debug
        console:
            type:   console
            process_psr_3_messages: false
            channels: ["!event", "!doctrine"]

它有效。当我在某个控制器中引发异常时,打开该控制器的URL会收到一封带有异常的电子邮件。因此,电子邮件可以在http级别上使用。但是,它不在控制台级别。我正在使用SF v4.2。我发现在最近的symfony版本中添加了控制台异常日志记录,因此无需为其添加错误控制台侦听器。它应该适用于我的版本。实际上,我在日志文件中看到异常消息。但是没有电子邮件。因此,我决定添加一个错误侦听器并记录关键消息(假设它应该触发主monolog处理程序)。所以我做到了。再一次,我在日志文件中看到了我的关键消息,但仍然没有电子邮件。那我在做什么错?我想收到有关控制台异常的异常电子邮件。

我倾向于将“去重复的”处理程序替换为“快速”处理程序,但这没有帮助。

0 个答案:

没有答案