Php/docs/class.mongolog

From Get docs

(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 possibleMongoLog::setLevel(MongoLog::ALL); // all log levelsMongoLog::setModule(MongoLog::ALL); // all parts of the driver// print significant events about replica set failoverMongoLog::setLevel(MongoLog::INFO);MongoLog::setModule(MongoLog::RS);// print info- and diagnostic-level events for replica sets and connectionsMongoLog::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


MongoLog {

/* Constants */

const int NONE = 0

const int ALL = 31

level constants {

const int WARNING = 1

const int INFO = 2

const int FINE = 4

module constants {

const int RS = 1

const int POOL = 1

const int CON = 2

const int IO = 4

const int SERVER = 8

const int PARSE = 16

/* Fields */

private static int $callback

private static int $level

private static int $module

/* Methods */

public static getCallback ( ) : callable

public static getLevel ( ) : int

public static getModule ( ) : int

public static setCallback ( callable $log_function ) : void

public static setLevel ( int $level ) : void

public static setModule ( int $module ) : void

}

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.


Changelog

Version Description
PECL mongo 1.3.0 Added MongoLog::CON and deprecated

MongoLog::POOL and MongoLog::SERVER.


Table of Contents