首页 » Web技术 » Laravel » 正文

Laravel 5.5 增加了对于异常的报警

在 Laravel 5.5 中可以为任何自定义异常定义一个report 方法。Laravel 会自动在异常处理类Illuminate\Foundation\Exceptions\Handler 中检查异常中是否存在 report 方法。

if (method_exists($e, 'report')) {
    return $e->report();
}

这可以方便的发邮件通知开发者、报告给应用的监控软件、或者执行异常抛出的事件中需要的动作。

在之前的版本中,通过编辑 App\Exceptions\Handler 类中的 report 方法也可以实现相同的结果。在这里你可以监听一个特定异常的实例,并执行相应的动作。

public function report(Exception $exception)
{
    if ($exception instanceof MyException) {
        // do something here such as send an email to developer or notify monitoring app
    }

    return parent::report($exception);
}

你可以想象到,随着应用的增长,这将会变得越来越复杂且不易维护。

Laravel 5.5 中这个小小的变化可以确保这将不再是什么问题。

via: laravel-news


该篇属于专题:《Laravel 5.5 资讯

本文共 3 个回复

  • goyouhuima.com 2017/04/26 12:45

    支持 越来越完善

  • 灰常记忆 2017/05/04 18:47

    现在你只折腾这个了

发表评论