The MongoLog class
(PECL mongo >=1.2.3)
Introduction
Logging can be used to get detailed information about what the driver is doing. Logging is disabled by default, but this class allows you to activate specific levels of logging for various parts of the driver. Some examples:
<?php
// print every log message possible
MongoLog::setLevel(MongoLog::ALL); // all log levels
MongoLog::setModule(MongoLog::ALL); // all parts of the driver
// print significant events about replica set failover
MongoLog::setLevel(MongoLog::INFO);
MongoLog::setModule(MongoLog::RS);
// print info- and diagnostic-level events for replica sets and connections
MongoLog::setLevel(MongoLog::INFO|MongoLog::FINE);
MongoLog::setModule(MongoLog::RS|MongoLog::CON);
?>
Note:
By default, MongoLog emits all log messages as PHP notices. Depending on the SAPI you use, messages may be sent to stderr (for CLI) or the web server's error log. If, after configuring MongoLog, log messages are not appearing as expected, ensure that the
E_NOTICE
bit is included in error_reporting and that display_errors is on.
Class synopsis
Predefined Constants
MongoLog Constants
These constants can be used by both MongoLog::setLevel() and MongoLog::setModule().
MongoLog::NONE
- Log nothing.
MongoLog::ALL
- Log everything.
MongoLog Level Constants
These constants can be used by MongoLog::setLevel().
MongoLog::WARNING
- Log events that are somewhat exceptional, but not quite worthy of an actual exception (e.g. recoverable connection errors).
MongoLog::INFO
- Log events that may be of interest to administrators, but are not particularly noteworthy (e.g. option parsing, authentication steps).
MongoLog::FINE
- Log most events that the driver performs (e.g. server selection, socket communication). Depending on the module being logged, this can be extremely noisy and is primarily useful for debugging.
MongoLog Module Constants
These constants can be used by MongoLog::setModule().
MongoLog::CON
- Log connection activity. Creating new connections, authentication, pinging, timeouts, etc.
MongoLog::IO
- Log traffic to/from the database. Unless your program is trivial, this will create an enormous number of log messages.
MongoLog::PARSE
- Log parsing of the connection string and options when constructing MongoClient.
MongoLog::POOL
-
Previously used to log connection pool activity. This option is now a
deprecated alias of
MongoLog::RS
. MongoLog::RS
- Log replica set activity. Failovers, read preference selection, etc.
MongoLog::SERVER
-
Previously used to log server status changes. This option is deprecated
in favor of
MongoLog::RS
.
Table of Contents
- MongoLog::getCallback — Gets the previously set callback function
- MongoLog::getLevel — Gets the level(s) currently being logged
- MongoLog::getModule — Gets the module(s) currently being logged
- MongoLog::setCallback — Sets a callback function to be invoked for events
- MongoLog::setLevel — Sets the level(s) to be logged
- MongoLog::setModule — Sets the module(s) to be logged
English translation
You have asked to visit this site in English. For now, only the interface is translated, but not all the content yet.If you want to help me in translations, your contribution is welcome. All you need to do is register on the site, and send me a message asking me to add you to the group of translators, which will give you the opportunity to translate the pages you want. A link at the bottom of each translated page indicates that you are the translator, and has a link to your profile.
Thank you in advance.
Document created the 30/01/2003, last modified the 26/10/2018
Source of the printed document:https://www.gaudry.be/en/php-rf-class.mongolog.html
The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.
References
These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author This site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.