0

在我的应用程序中有几个地方作为业务逻辑的一部分抛出异常,但我不需要 Symfony2 来生成和记录异常。

例如,当用户尝试执行他暂时无法执行的操作时,我会调用 $this->createAccessDeniedException() 并显示一条不错的错误消息。这不是应用程序故障,我不需要记录它。大多数情况下,它是给用户的一条消息,说“稍后再试,或者在你先完成另一个步骤之后”。

我可以教它不记录某些情况还是我使用异常严重,如果是这样,我应该怎么做?

更新:我的配置:

monolog:
    handlers:
        main:
            type:         fingers_crossed
            action_level: error
            handler:      grouped
        grouped:
            type:       group
            members:    [streamed, buffered]
        streamed:
            type:       stream
            path:       %kernel.logs_dir%/%kernel.environment%.log
            level:      debug
        buffered:
            type:       buffer
            handler:    swift
        swift:
            type:       swift_mailer
            from_email: xxx@xxx.xxx
            to_email:   xxx@xxx.xxx
            subject:    "Error"
            level:      info
4

1 回答 1

0

正如您在 中看到的ExceptionListenerAccessDeniedException不应将 记录为正常异常,而应记录为 DEBUG 级别的特殊消息。

如果您在生产日志文件中看到这些消息,您应该检查为 Monolog 配置的最低级别。我建议将其设置为 NOTICE。

于 2014-06-01T17:28:29.720 回答