【问题标题】:Don't log some kind of exceptions不要记录某种异常
【发布时间】:2016-01-28 16:41:53
【问题描述】:

我正在运行一个相当大的应用程序,有几千个用户,我喜欢(几乎)每天检查日志文件,看看是否出了问题。

幸运的是系统相当稳定,但我遇到了很多Invalid CSRF tokenRecord not found in table X with primary key [NULL](等等)错误。我通常会忽略这种错误,因为我无法避免它们。

有没有办法告诉记录器不要在我的日志文件中保存这些异常?

【问题讨论】:

    标签: cakephp exception logging cakephp-3.0


    【解决方案1】:

    检查应用程序app.php 配置文件的Error 部分,特别是skipLog 选项的说明。

    [...]

    skipLog - 数组 - 记录要跳过的异常列表。扩展列出的异常之一的异常也将被跳过以进行日志记录。例如:

    'skipLog' => ['Cake\Network\Exception\NotFoundException', 'Cake\Network\Exception\UnauthorizedException']
    

    [...]

    您可能想跳过\Cake\Network\Exception\NotFoundException\Cake\Network\Exception\InvalidCsrfTokenException

    如果您需要更细粒度的控制,则必须创建自定义错误处理程序并覆盖例如 BaseErrorHandler::_logException(),您可以在其中检查异常并采取相应措施。

    另见

    【讨论】:

    • 谢谢,这正是我想要的!
    猜你喜欢
    • 2021-04-29
    • 2015-12-21
    • 2014-02-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-06
    • 2014-08-23
    相关资源
    最近更新 更多