swoole如何自定義錯誤-創(chuàng)新互聯(lián)

小編給大家分享一下swoole如何自定義錯誤,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

創(chuàng)新互聯(lián)專注于曲松網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供曲松營銷型網(wǎng)站建設(shè),曲松網(wǎng)站制作、曲松網(wǎng)頁設(shè)計、曲松網(wǎng)站官網(wǎng)定制、微信平臺小程序開發(fā)服務(wù),打造曲松網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供曲松網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。

創(chuàng)建錯誤處理器

實現(xiàn)ErrorHandlerInterface接口

namespace App;
use Core\AbstractInterface\ErrorHandlerInterface;
class Test implements ErrorHandlerInterface
{
    function handler( $msg,$file = null,$line = null,$errorCode = null,$trace )
    {
        echo "文件{$file}的第{$line}行,錯誤:{$msg}";
    }
    function display($msg,$file = null,$line = null,$errorCode = null,$trace )
    {
    }
    function log( $msg,$file = null,$line = null,$errorCode = null,$trace )
    {
    }
}

當(dāng)開啟DEBUG.ENABLE的時候,則自定義錯誤處理有效。

IOC注入

在框架初始化后事件注入:

Di::getInstance()->set(SysConst::ERROR_HANDLER,Test::class);

注意,若在接下去的beforeWorker事件中有邏輯錯誤,則會導(dǎo)致在服務(wù)啟動前,錯誤處理類立即被實例化,若在處理函數(shù)內(nèi),有用到例如redis等連接,則會造成多進(jìn)程連接共用問題,為避免該情況,可以利用task進(jìn)程去轉(zhuǎn)換。

例如,發(fā)生錯誤信息的時候,則投遞至task進(jìn)程,在task進(jìn)程中去獲取一個單例的redis連接,來寫入錯誤信息。

看完了這篇文章,相信你對“swoole如何自定義錯誤”有了一定的了解,如果想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!

新聞標(biāo)題:swoole如何自定義錯誤-創(chuàng)新互聯(lián)
轉(zhuǎn)載源于:http://muchs.cn/article46/dchseg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、網(wǎng)站建設(shè)、定制網(wǎng)站、微信小程序、標(biāo)簽優(yōu)化、虛擬主機(jī)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司