亚洲精品成人_精品成人一区_999视频在线播放_免费黄色在线_亚洲成人久久久_久久www免费视频

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());

主站蜘蛛池模板: 成人国产精品一级毛片视频 | 在线免费国产 | 毛片网站在线播放 | 二区三区偷拍浴室洗澡视频 | 成人精品视频网站 | 国产精品亚洲二区在线观看 | 91精品国产乱码久久久竹菊 | 日本一区中文字幕 | 成人在线看片 | 天天干天天干天天干天天干天天干 | 免费看毛片网站 | 九九视频精品在线 | 色噜噜狠狠色综合欧洲selulu | 久操视频免费看 | 一区在线不卡 | 亚洲欧美中日精品高清一区二区 | 91免费国产精品 | 亚洲一级一级一级 | 99久久精品久久久久久动态片 | 久久精品一级片 | 亚洲成人另类 | 国产98在线传媒麻豆有限公司 | 岛国毛片 | 成人性生交免费大片2 | 天天天干 | 一级全黄60分钟免费观看视频播放 | 亚洲激情网站 | 免费观看a毛片一区二区不卡 | 年轻母亲2电影 | 亚洲美女视频网站 | 亚洲天堂男人网 | 二区久久 | 亚洲国产免费看 | 特级毛片aaaa级毛片免费 | 日日夜夜爽 | 看真人视频一级毛片 | 国产乱子伦 | 五月天堂av91久久久 | 久久天天躁夜夜躁狠狠 | 成人性生交大片免费8 | 欧美精品国产一区二区 |