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

創(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://www.chinadenli.net/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)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容