示例#1
0
         * <p>If {@link LOG4PHP_CONFIGURATION} has '.xml' extension set the 
         * constants to '{@link LOG4PHP_DIR}/xml/{@link LoggerDOMConfigurator}'.</p>
         * <p>Otherwise set the constants to 
         * '{@link LOG4PHP_DIR}/{@link LoggerPropertyConfigurator}'.</p>
         *
         * <p><b>Security Note</b>: classfile pointed by this constant will be brutally
         * included with a:
         * <code>@include_once(LOG4PHP_CONFIGURATOR_CLASS . ".php");</code></p>
         *
         * @var string
         */
        define('LOG4PHP_CONFIGURATOR_CLASS', LOG4PHP_DIR . '/LoggerPropertyConfigurator');
    }
}
if (!LOG4PHP_DEFAULT_INIT_OVERRIDE) {
    if (!LoggerManagerDefaultInit()) {
        LoggerLog::warn("LOG4PHP main() Default Init failed.");
    }
}
/**
 * Default init procedure.
 *
 * <p>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.</p>
 * <p>Users can skip this procedure using {@link LOG4PHP_DEFAULT_INIT_OVERRIDE}
 * constant.</p> 
 *
 * @return boolean
 */
示例#2
0
        return;
    }
    define('LOG4PHP_CONFIGURATION', DIF_SYSTEM_ROOT . 'conf/logger.properties');
    define('LOG4PHP_CONFIGURATOR_CLASS', 'LoggerPropertyOverriderConfigurator');
    define('LOG4PHP_DEFAULT_INIT_OVERRIDE', true);
    require_once 'log4php/src/log4php/LoggerManager.php';
    require_once 'log4php/src/log4php/LoggerPropertyConfigurator.php';
    class LoggerPropertyOverriderConfigurator extends LoggerPropertyConfigurator
    {
        public function configure($url = '')
        {
            $configurator = new LoggerPropertyOverriderConfigurator();
            $repository =& LoggerManager::getLoggerRepository();
            return $configurator->doConfigure($url, $repository);
        }
        public function doConfigureProperties($properties, &$hierarchy)
        {
            // TODO: should search for file appenders instead
            define('FILE_APPENDER', 'log4php.appender.A1.file');
            if (isset($properties[FILE_APPENDER])) {
                $logFilename = $properties[FILE_APPENDER];
                $logFilename = str_replace('LOG_HOME', DIF_SYSTEM_ROOT . 'log', $logFilename);
                // make logfile available to everyone
                define('LOG_FILE', $logFilename);
                $properties[FILE_APPENDER] = $logFilename;
            }
            parent::doConfigureProperties($properties, $hierarchy);
        }
    }
    LoggerManagerDefaultInit();
}