exists($name); } /** * Returns an array this whole Logger instances. * * @static * @see Logger * @return array */ public static function getCurrentLoggers() { return self::getLoggerRepository()->getCurrentLoggers(); } /** * Returns the root logger. * * @static * @return object * @see LoggerRoot */ public static function getRootLogger() { return self::getLoggerRepository()->getRootLogger(); } /** * Returns the specified Logger. * * @param string $name logger name * @param LoggerFactory $factory a {@link LoggerFactory} instance or null * @static * @return Logger */ public static function getLogger($name, $factory = null) { return self::getLoggerRepository()->getLogger($name, $factory); } /** * Returns the LoggerHierarchy. * * @static * @return LoggerHierarchy */ public static function getLoggerRepository() { return LoggerHierarchy::singleton(); } /** * Destroy loggers object tree. * * @static * @return boolean */ public static function resetConfiguration() { return self::getLoggerRepository()->resetConfiguration(); } /** * Does nothing. * @static */ public static function setRepositorySelector($selector, $guard) { return; } /** * Safely close all appenders. * @static */ public static function shutdown() { return self::getLoggerRepository()->shutdown(); } } // --------------------------------------------------------------------------- // --------------------------------------------------------------------------- // --------------------------------------------------------------------------- if (!defined('LOG4PHP_DEFAULT_INIT_OVERRIDE')) { if (isset($_ENV['log4php.defaultInitOverride'])) { /** * @ignore */ define('LOG4PHP_DEFAULT_INIT_OVERRIDE', LoggerOptionConverter::toBoolean($_ENV['log4php.defaultInitOverride'], false) ); } elseif (isset($GLOBALS['log4php.defaultInitOverride'])) { /** * @ignore */ define('LOG4PHP_DEFAULT_INIT_OVERRIDE', LoggerOptionConverter::toBoolean($GLOBALS['log4php.defaultInitOverride'], false) ); } else { /** * Controls init execution * * With this constant users can skip the default init procedure that is * called when this file is included. * *
If it is not user defined, log4php tries to autoconfigure using (in order):
* * - the$_ENV['log4php.defaultInitOverride']
variable.
* - the $GLOBALS['log4php.defaultInitOverride']
global variable.
* - defaults to false
*
* @var boolean
*/
define('LOG4PHP_DEFAULT_INIT_OVERRIDE', false);
}
}
if (!defined('LOG4PHP_CONFIGURATION')) {
if (isset($_ENV['log4php.configuration'])) {
/**
* @ignore
*/
define('LOG4PHP_CONFIGURATION', trim($_ENV['log4php.configuration']));
} else {
/**
* Configuration file.
*
* This constant tells configurator classes where the configuration * file is located.
*If not set by user, log4php tries to set it automatically using * (in order):
* * - the$_ENV['log4php.configuration']
enviroment variable.
* - defaults to 'log4php.properties'.
*
* @var string
*/
define('LOG4PHP_CONFIGURATION', 'log4php.properties');
}
}
if (!defined('LOG4PHP_CONFIGURATOR_CLASS')) {
if ( strtolower(substr( LOG4PHP_CONFIGURATION, -4 )) == '.xml') {
/**
* @ignore
*/
define('LOG4PHP_CONFIGURATOR_CLASS', LOG4PHP_DIR . '/xml/LoggerDOMConfigurator');
} else {
/**
* Holds the configurator class name.
*
* This constant is set with the fullname (path included but non the * .php extension) of the configurator class that init procedure will use.
*If not set by user, log4php tries to set it automatically.
*If {@link LOG4PHP_CONFIGURATION} has '.xml' extension set the * constants to '{@link LOG4PHP_DIR}/xml/{@link LoggerDOMConfigurator}'.
*Otherwise set the constants to * '{@link LOG4PHP_DIR}/{@link LoggerPropertyConfigurator}'.
* *Security Note: classfile pointed by this constant will be brutally
* included with a:
* @include_once(LOG4PHP_CONFIGURATOR_CLASS . ".php");
This procedure tries to configure the {@link LoggerHierarchy} using the * configurator class defined via {@link LOG4PHP_CONFIGURATOR_CLASS} that tries * to load the configurator file defined in {@link LOG4PHP_CONFIGURATION}. * If something goes wrong a warn is raised.
*Users can skip this procedure using {@link LOG4PHP_DEFAULT_INIT_OVERRIDE} * constant.
* * @return boolean */ function LoggerManagerDefaultInit() { $configuratorClass = basename(LOG4PHP_CONFIGURATOR_CLASS); if (!class_exists($configuratorClass)) { include_once(LOG4PHP_CONFIGURATOR_CLASS . ".php"); } if (class_exists($configuratorClass)) { return call_user_func(array($configuratorClass, 'configure'), LOG4PHP_CONFIGURATION); } else { LoggerLog::warn("LoggerManagerDefaultInit() Configurator '{$configuratorClass}' doesnt exists"); return false; } }