黄p网站_在线看中文字幕_亚洲电影免费观看_成人激情视频_欧美成视频_中国av在线

Trigger

EasySwoole\EasySwoole\Trigger觸發器,用于主動觸發錯誤或者異常而不中斷程序繼續執行。

使用

攔截異常并記錄

比如:在控制器的OnException中:

protected function onException(\Throwable $throwable): void
{
    //攔截錯誤進日志,使控制器繼續運行
    \EasySwoole\EasySwoole\Trigger::getInstance()->throwable($throwable);
    $this->writeJson(\EasySwoole\Http\Message\Status::CODE_INTERNAL_SERVER_ERROR, null, $throwable->getMessage());
}

直接記錄

\EasySwoole\EasySwoole\Trigger::getInstance()->error('test error');

回調接管注冊

通常出現重大異常(支付失敗等)需要進行報警處理,在全局的mainServerCreate事件中進行注冊:

\EasySwoole\EasySwoole\Trigger::getInstance()->onException()->set('notify',function (\Throwable $throwable){
    // 自行實現通知代碼
});

\EasySwoole\EasySwoole\Trigger::getInstance()->onError()->set('notify',function ($msg){
    // 自行實現通知代碼
});

自定義處理類

需要開發者實現EasySwoole\Trigger\TriggerInterface

<?php

namespace App\Exception;

use EasySwoole\EasySwoole\Logger;
use EasySwoole\Trigger\Location;
use EasySwoole\Trigger\TriggerInterface;

class TriggerHandel implements TriggerInterface
{
    public function error($msg, int $errorCode = E_USER_ERROR, Location $location = null)
    {
        Logger::getInstance()->console('這是自定義輸出的錯誤:'.$msg);
        // TODO: Implement error() method.
    }

    public function throwable(\Throwable $throwable)
    {
        Logger::getInstance()->console('這是自定義輸出的異常:'.$throwable->getMessage());
        // TODO: Implement throwable() method.
    }
}

initialize事件中注入自定義trigger處理器:

\EasySwoole\EasySwoole\Trigger::getInstance(new \App\Exception\TriggerHandel());

主站蜘蛛池模板: 免费成人高清 | 亚洲精品久久久久久久久久久久久 | 成人在线看片 | 国产日韩精品一区二区 | 国产欧美精品一区二区三区四区 | 中文字幕一级毛片 | 日韩二三区 | 中文字字幕在线观看 | 日韩精品1区 | 欧美激情一区二区三区 | 欧美福利 | 国偷自产一区二区免费视频 | 黄色国产 | 国产传媒一区 | 久久亚洲一区二区 | 日韩另类 | 日本三级在线观看网站 | 日韩欧美~中文字幕 | 永久免费av| 国产亚洲成av人片在线观看桃 | 国产高清在线 | 亚洲综合在线视频 | baoyu123成人免费看视频 | 日韩一级片 | 亚洲综合国产 | 日韩精品在线一区 | 多p视频 | 日韩一级视频 | 国偷自产av一区二区三区 | 日韩精品一区二区三区四区五区 | 久久精品一区二区三区四区毛片 | 国产精品久久久久久久久久免费看 | 午夜黄色影院 | 国产在线精品一区 | 91视频免费在线看 | 蜜桃av一区二区三区 | 成人欧美一区二区三区在线播放 | 欧美成人精品一区二区三区在线看 | 成人精品免费视频 | 中文字幕乱码亚洲精品一区 | 中文字幕观看 |