Symonfy2中Monolog / Swiftmailer Html Formatter的正确配置是什么?

时间:2014-02-22 03:44:00

标签: symfony swiftmailer monolog

我在设置Monolog以使用Swiftmailer和Html格式化程序时遇到了麻烦。我有多个monolog处理程序和swiftmail邮件程序可能是问题。这是我的config.yml

Monolog部分:

services:
    monolog.formatter.html:
        class: Monolog\Formatter\HtmlFormatter


monolog:

    channels: ["orders", "support"]

    handlers:

        # Called
        orders:
            type:  stream
            path:  "%kernel.logs_dir%/%kernel.environment%_orders.log"
            level: info
            channels: orders

        # Called
        support:
            type: fingers_crossed
            action_level: critical
            handler: support_grouped
            channels: support

        # Not called, referenced in a handler [support]
        support_grouped:
            type: group
            members: [support_log, environment_log, support_buffered]

        # Not called, referenced in a group handler [grouped_support]
        support_buffered:
            type: buffer
            handler: support_buffered_grouped

        # Not called, referenced in a handler [support_buffered]
        support_buffered_grouped:
            type: group
            members: [hipchat, webmaster_email, support_email]

        # Not called, referenced in a group handler [support_buffered_grouped]
        support_email:
            type: swift_mailer
            mailer: swiftmailer.mailer.errors
            from_email: %webmaster_email_address%
            to_email:   %support_email_address%
            subject:    '[Costimator] Support: An Error Occurred!'
            level: debug
            content_type: text/html
            formatter: monolog.formatter.html

        # Called
        webmaster:
            type: fingers_crossed
            action_level: critical
            handler: webmaster_grouped

        # Not called, referenced in a handler [webmaster]
        webmaster_grouped:
            type: group
            members: [environment_log, webmaster_buffered]

        # Not called, referenced in a handler [webmaster_grouped]
        webmaster_buffered:
            type: buffer
            handler: webmaster_buffered_grouped

        # Not called, referenced in a handler [webmaster_buffered_grouped]
        webmaster_buffered_grouped:
            type: group
            members: [hipchat, webmaster_email]

        # Not called, referenced in a group handler [webmaster_buffered_grouped, support_buffered_grouped]
        webmaster_email:
            type:       swift_mailer
            mailer: swiftmailer.mailer.errors
            content_type: text/html
            from_email: %webmaster_email_address%
            to_email:   %webmaster_email_address%
            subject:    '[Costimator] An Error Occurred!'
            level: debug
            formatter: monolog.formatter.html

        # Not called, referenced in a group handler [support_grouped, webmaster_grouped]
        environment_log:
            type:  stream
            path:  "%kernel.logs_dir%/%kernel.environment%.log"
            level: debug

        # Not called, referenced in a group handler [support_grouped, webmaster_grouped]
        support_log:
            type:  stream
            path:  "%kernel.logs_dir%/%kernel.environment%.support_log"
            level: debug

        # Not called, referenced in a group handler [webmaster_buffered_grouped, support_buffered_grouped]
        hipchat:
            type:  hipchat
            notify: true
            token: xxx
            room: xxx
            level: critical

Swiftmailer部分:

# Swiftmailer Configuration
swiftmailer:
    default_mailer: %mailer_default_config%
    mailers:
        default:
            delivery_address: "%mailer_delivery_address%"
            transport: "%mailer_transport%"
            host:      "%mailer_host%"
            username:  "%mailer_user%"
            password:  "%mailer_password%"
            spool:
                type: "%mailer_spool_type%"
                path: "%kernel.root_dir%/spool"

        errors:
            delivery_address: "%mailer_errors_delivery_address%"
            transport: "%mailer_errors_transport%"
            host:      "%mailer_errors_host%"
            username:  "%mailer_errors_user%"
            password:  "%mailer_errors_password%"
            spool:
                type: "%mailer_errors_spool_type%"
                path: "%kernel.root_dir%/spool"

错误以text / html格式发送,但没有表格格式。有什么想法吗?

// Ping @seldaek

编辑格式化程序似乎在处理程序上设置:

formatters set on handlers

1 个答案:

答案 0 :(得分:5)

上面的配置实际上可以正常工作。不知道发生了什么。

将此留给其他想要实现HTML格式的人。