La classe MongoLog
(PECL mongo >=1.2.3)
Introduction
L'enregistrement de traces peut être utilisé pour récupérer des informations détaillées sur les différentes activités du driver. Par défaut, l'enregistrement des traces est désactivé, mais cette classe vous permet d'activer des niveaux spécifiques d'enregistrements pour différentes parties du driver. Quelques exemples :
<?php
// affiche tous les messages de logs possibles
MongoLog::setLevel(MongoLog::ALL); // tous les niveaux de logs
MongoLog::setModule(MongoLog::ALL); // toutes les parties du driver
// affiche les évènements significatifs concernant les erreurs du jeu de réplication
MongoLog::setLevel(MongoLog::INFO);
MongoLog::setModule(MongoLog::RS);
// affiche les informations et le niveau de diagnostique des événements pour les
// jeux de réplication et les connexions
MongoLog::setLevel(MongoLog::INFO|MongoLog::FINE);
MongoLog::setModule(MongoLog::RS|MongoLog::CON);
?>
Note:
Par défaut, MongoLog émet tous les messages d'enregistrement de traces comme notices PHP. Suivant le SAPI utilisé, les messages peuvent être envoyés à stderr (pour CLI) ou au log d'erreurs du serveur Web. Si, après avoir configuré MongoLog, les messages d'enregistrement de traces n'apparaissent pas comme prévus, assurez-vous que
E_NOTICEest inclus dans l'option de configuration error_reporting et que display_errors vaut "on".
Synopsis de la classe
Constantes pré-définies
Constantes MongoLog
Ces constantes peuvent être utilisées par à la fois la méthode MongoLog::setLevel() et la méthode MongoLog::setModule().
MongoLog::NONE- Aucun enregistrement de traces n'est réalisé.
MongoLog::ALL- Enregistre toutes les traces.
Constantes MongoLog sur les niveaux
Ces constantes peuvent être utilisées par la méthode MongoLog::setLevel().
MongoLog::WARNING- Log les événements qui sont exceptionnels, mais pas assez pour lancer une exception (i.e. erreurs de connexion qui peuvent être corrigées).
MongoLog::INFO- Log les événements qui peuvent intéresser les administrateurs, mais qui ne sont pas noticiable (i.e. option d'analyse, étape d'authentification).
MongoLog::FINE- Log la plupart des événements que le driver produit (i.e. sélection de serveur, communication avec un socket). Suivant le module dont on enregistre les traces, ceci peut être très verbeux, et est principalement prévu pour le débogage.
Constantes du module MongoLog
Ces constantes peuvent être utilisées par la méthode MongoLog::setModule().
MongoLog::CON- Log l'activité de la connexion. Création d'une nouvelle connexion, authentification, les différents pings, l'atteinte des délais d'expiration, etc..
MongoLog::IO- Enregistre les traces à propos du trafic de la base de données. A moins que votre programme soit très particulier, cette constante créera un nombre gigantesque de messages de logs.
MongoLog::PARSE- Log l'analyse de la chaîne de connexion et des options, lors de la construction d'un MongoClient.
MongoLog::POOL-
Précédemment utilisé pour enregistrer les traces de l'activité du
pool de connexion. Cette option est maintenant obsolète, et est un
alias de
MongoLog::RS. MongoLog::RS- Enregistre les traces de l'activité du jeu de réplication (Erreur, sélection de la préférence de lecture, etc.).
MongoLog::SERVER-
Précédemment utilisé pour enregistrer les traces des modifications
de statut du serveur. Cette option est obsolète, en faveur de
MongoLog::RS.
Historique
| Version | Description |
|---|---|
| 1.3.0 |
Ajout de MongoLog::CON,
et, désormais, MongoLog::POOL et
MongoLog::SERVER sont obsolètes.
|
Sommaire
- MongoLog::getCallback — Récupère la précédente fonction de rappel définie
- MongoLog::getLevel — Récupère le(s) niveau(x) actuellement loggué(s)
- MongoLog::getModule — Récupère le(s) module(s) actuellement surveillé(s)
- MongoLog::setCallback — Définit une fonction de rappel à utiliser lors d'événements
- MongoLog::setLevel — Définit le(s) niveau(x) des logs
- MongoLog::setModule — Définit le(s) module(s) à surveiller avec les logs