Maison > cadre php > Swoole > méthode d'erreur personnalisée swoole

méthode d'erreur personnalisée swoole

Libérer: 2019-12-17 09:39:26
original
2043 Les gens l'ont consulté

méthode d'erreur personnalisée swoole

Créer un gestionnaire d'erreurs

Implémenter l'interface 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 )
    {
    }
}
Copier après la connexion

Lorsque DEBUG.ENABLE est activé, personnalisez l'erreur Le traitement est efficace.

Injection IOC

Injection d'événement après l'initialisation du framework :

Di::getInstance()->set(SysConst::ERROR_HANDLER,Test::class);
Copier après la connexion

Notez que s'il y a une erreur logique dans le prochain événement beforeWorker, il will En conséquence, la classe de gestion des erreurs est instanciée immédiatement avant le démarrage du service. Si une connexion telle que redis est utilisée dans la fonction de traitement, cela entraînera un problème de partage de connexion multi-processus. Pour éviter cette situation, le processus de tâche. peut être utilisé pour convertir.

Par exemple, lorsqu'un message d'erreur se produit, il est transmis au processus de tâche et une connexion Redis singleton est obtenue dans le processus de tâche pour écrire le message d'erreur.

Apprentissage recommandé : tutoriel vidéo swoole

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal