在Symfony2中配置monolog

时间:2015-11-09 11:55:49

标签: symfony monolog

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

我想在日志中只出现主要错误,例如500错误,影响项目正常运行的错误。

我查看了官方Symfony2上的monolog捆绑文档,但我一点也不清楚。

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

有人能告诉我怎么做到这个吗?

2 个答案:

答案 0 :(得分:1)

我们定义了

monolog:
    handlers:
        main:
            action_level: error

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

请检查你的Swift部分: 你有级别:'debug',显然不符合你的要求。您应该使用“错误”或“关键”。另见http://symfony.com/doc/current/cookbook/logging/monolog_email.html

一般来说,知道什么样的日志产生太多以及什么样的信息会有所帮助? (例如,我们将Doctrine放到不同的monolog通道中,以便在我们的主日志中删除它。)

答案 1 :(得分:0)

这是我对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