>  기사  >  PHP 프레임워크  >  Swoole 사용자 정의 오류 방법

Swoole 사용자 정의 오류 방법

尚
원래의
2019-12-17 09:39:261995검색

Swoole 사용자 정의 오류 방법

오류 처리기 만들기

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 )
    {
    }
}

DEBUG.ENABLE이 켜져 있으면 사용자 정의 오류 처리가 유효합니다.

IOC 주입

프레임워크 초기화 후 이벤트 주입:

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

다음 beforeWorker 이벤트에 논리 오류가 있는 경우 서비스가 시작되기 직전에 오류 처리 클래스가 인스턴스화됩니다. 처리 기능을 사용하면 redis와 같은 연결을 사용하면 다중 프로세스 연결 공유 문제가 발생하므로 이러한 상황을 방지하려면 작업 프로세스를 사용하여 변환할 수 있습니다.

예를 들어 오류 메시지가 발생하면 이를 태스크 프로세스로 전달하고, 태스크 프로세스에서 싱글톤 Redis 연결을 얻어 오류 메시지를 작성합니다.

추천 학습: swoole 동영상 튜토리얼

위 내용은 Swoole 사용자 정의 오류 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.