不要记录某种例外情况

时间:2016-01-28 16:41:54

标签: cakephp exception logging cakephp-3.0

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

幸运的是系统非常稳定,但我有很多Invalid CSRF tokenRecord not found in table X with primary key [NULL],(等等)错误。我经常忽略那种错误,因为我无法避免这些错误。

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

1 个答案:

答案 0 :(得分:4)

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

  

[...]

     

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

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

[...]

您想要跳过\Cake\Network\Exception\NotFoundException\Cake\Network\Exception\InvalidCsrfTokenException

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

另见