Exemplo n.º 1
0
 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);
 }
Exemplo n.º 2
0
 function setupLogging()
 {
     global $default;
     $oKTConfig =& KTConfig::getSingleton();
     if (!defined('APP_NAME')) {
         define('APP_NAME', $oKTConfig->get('ui/appName', 'KnowledgeTree'));
     }
     define('KT_LOG4PHP_DIR', KT_DIR . '/thirdparty/apache-log4php/src/main/php' . DIRECTORY_SEPARATOR);
     define('LOG4PHP_CONFIGURATION', KT_DIR . '/config/ktlog.ini');
     define('LOG4PHP_DEFAULT_INIT_OVERRIDE', true);
     require_once KT_LOG4PHP_DIR . 'LoggerManager.php';
     require_once KT_LOG4PHP_DIR . 'LoggerPropertyConfigurator.php';
     $configurator = new LoggerPropertyConfigurator();
     $repository = LoggerManager::getLoggerRepository();
     $properties = @parse_ini_file(LOG4PHP_CONFIGURATION);
     $properties['log4php.appender.default'] = 'LoggerAppenderDailyFile';
     $properties['log4php.appender.default.layout'] = 'LoggerPatternLayout';
     $properties['log4php.appender.default.layout.conversionPattern'] = '%d{Y-m-d | H:i:s} | %p | %t | %r | %X{userid} | %X{db} | %c | %M | %m%n';
     $properties['log4php.appender.default.datePattern'] = 'Y-m-d';
     $logDir = $oKTConfig->get('urls/logDirectory');
     $properties['log4php.appender.default.file'] = $logDir . '/kt%s.' . KTUtil::running_user() . '.log.txt';
     // get the log level set in the configuration settings to override the level set in ktlog.ini
     // for the default / main logging. Additional logging can be configured through the ini file
     $logLevel = $oKTConfig->get('KnowledgeTree/logLevel');
     $properties['log4php.rootLogger'] = $logLevel . ', default';
     session_start();
     $configurator->doConfigureProperties($properties, $repository);
     $userId = isset($_SESSION['userID']) ? $_SESSION['userID'] : 'n/a';
     LoggerMDC::put('userid', $userId);
     LoggerMDC::put('db', $oKTConfig->get('db/dbName'));
     $default->log = LoggerManager::getLogger('default');
     $default->queryLog = LoggerManager::getLogger('sql');
     $default->timerLog = LoggerManager::getLogger('timer');
     $default->phpErrorLog = LoggerManager::getLogger('php');
 }