在 Symfony2 中配置独白

Configuring monolog in Symfony2

我正在尝试优化我的项目日志(因为我的日志现在有 3Gb)以便在出现问题时服务器向我发送一封包含错误详细信息的电子邮件。

我希望日志中只出现重大错误,例如500错误,影响项目正常运行的错误。

我看过官方 Symfony2 上 monolog 包的文档,但我一点都不清楚。

(http://symfony.com/doc/current/reference/configuration/monolog.html)

谁能告诉我如何得到这个?

我们定义了

monolog:
    handlers:
        main:
            action_level: error

在我们的生产环境中。 当然你必须检查你需要适应哪个处理程序(在我们的例子中:'main')但是通过将 action_level 更改为 'error' 你可以摆脱所有 debug/info 语句在您的日志中,仅显示级别 'error'。

请检查您的 Swift 部分: 你的level: 'debug' 这显然不符合你的要求。您应该改用 'error' 或 'critical'。另见 http://symfony.com/doc/current/cookbook/logging/monolog_email.html

一般来说,了解哪种日志产生过多以及哪种信息会很有帮助? (例如,我们将 Doctrine 放到不同的 monolog 频道以在我们的主日志中删除它)。

这是我的独白配置。

monolog:
    handlers:
        main:
            action_level: error
        console:
            type:   console
            bubble: false
        mail:
            type: fingers_crossed
            action_level: critical
            handler: buffered
        buffered:
            type: buffer
            handler: swift
        swift:
            type: swift_mailer
            from_email: his@email.com
            to_email: my@email.com
            subject: Critical error spotted
            level: debug