diff --git a/web/includes/logger.php b/web/includes/logger.php
index 3aa8f891b..7404891b6 100644
--- a/web/includes/logger.php
+++ b/web/includes/logger.php
@@ -274,7 +274,7 @@ class Logger {
}
}
}
- return( $this->databaseLevel );
+ return $this->databaseLevel;
}
public function fileLevel( $fileLevel ) {
@@ -288,7 +288,7 @@ class Logger {
$this->openFile();
}
}
- return( $this->fileLevel );
+ return $this->fileLevel;
}
public function weblogLevel( $weblogLevel ) {
@@ -303,7 +303,7 @@ class Logger {
$this->weblogLevel = $weblogLevel;
}
}
- return( $this->weblogLevel );
+ return $this->weblogLevel;
}
public function syslogLevel( $syslogLevel ) {
@@ -317,30 +317,31 @@ class Logger {
$this->openSyslog();
}
}
- return( $this->syslogLevel );
+ return $this->syslogLevel;
}
private function openSyslog() {
- openlog( $this->id, LOG_PID|LOG_NDELAY, LOG_LOCAL1 );
+ openlog($this->id, LOG_PID|LOG_NDELAY, LOG_LOCAL1);
}
private function closeSyslog() {
closelog();
}
- private function logFile( $logFile ) {
- if ( preg_match( '/^(.+)\+$/', $logFile, $matches ) )
+ private function logFile($logFile) {
+ if ( preg_match('/^(.+)\+$/', $logFile, $matches) ) {
$this->logFile = $matches[1].'.'.getmypid();
- else
+ } else {
$this->logFile = $logFile;
+ }
}
private function openFile() {
if ( !$this->useErrorLog ) {
- if ( $this->logFd = fopen( $this->logFile, 'a+' ) ) {
- if ( strnatcmp( phpversion(), '5.2.0' ) >= 0 ) {
+ if ( $this->logFd = fopen($this->logFile, 'a+') ) {
+ if ( strnatcmp(phpversion(), '5.2.0') >= 0 ) {
$error = error_get_last();
- trigger_error( "Can't open log file '$logFile': ".$error['message'].' @ '.$error['file'].'/'.$error['line'], E_USER_ERROR );
+ trigger_error("Can't open log file '$logFile': ".$error['message'].' @ '.$error['file'].'/'.$error['line'], E_USER_ERROR);
}
$this->fileLevel = self::NOLOG;
}
@@ -349,73 +350,80 @@ class Logger {
private function closeFile() {
if ( $this->logFd )
- fclose( $this->logFd );
+ fclose($this->logFd);
}
public function logPrint( $level, $string, $file=NULL, $line=NULL ) {
- if ( $level <= $this->effectiveLevel ) {
- $string = preg_replace( '/[\r\n]+$/', '', $string );
- $code = self::$codes[$level];
+ if ( $level > $this->effectiveLevel ) {
+ return;
+ }
- $time = gettimeofday();
- $message = sprintf( '%s.%06d %s[%d].%s [%s]', strftime( '%x %H:%M:%S', $time['sec'] ), $time['usec'], $this->id, getmypid(), $code, $string );
+ $string = preg_replace('/[\r\n]+$/', '', $string);
+ $code = self::$codes[$level];
- if ( is_null($file) ) {
- if ( $this->useErrorLog || $this->databaseLevel > self::NOLOG ) {
- $backTrace = debug_backtrace();
- $file = $backTrace[1]['file'];
- $line = $backTrace[1]['line'];
- if ( $this->hasTerm )
- $rootPath = getcwd();
- else
- $rootPath = $_SERVER['DOCUMENT_ROOT'];
- $file = preg_replace( '/^'.addcslashes($rootPath,'/').'\/?/', '', $file );
- }
- }
+ $time = gettimeofday();
+ $message = sprintf('%s.%06d %s[%d].%s [%s] [%s]', strftime('%x %H:%M:%S', $time['sec']), $time['usec'], $this->id, getmypid(), $code, $_SERVER['REMOTE_ADDR'], $string);
- if ( $this->useErrorLog )
- $message .= ' at '.$file.' line '.$line;
- else
- $message = $message;
-
- if ( $level <= $this->termLevel )
+ if ( is_null($file) ) {
+ if ( $this->useErrorLog || $this->databaseLevel > self::NOLOG ) {
+ $backTrace = debug_backtrace();
+ $file = $backTrace[1]['file'];
+ $line = $backTrace[1]['line'];
if ( $this->hasTerm )
- print( $message."\n" );
+ $rootPath = getcwd();
else
- print( preg_replace( "/\n/", '
', htmlspecialchars($message) ).'
' );
-
- if ( $level <= $this->fileLevel )
- if ( $this->useErrorLog ) {
- if ( !error_log( $message."\n", 3, $this->logFile ) ) {
- if ( strnatcmp( phpversion(), '5.2.0' ) >= 0 ) {
- $error = error_get_last();
- trigger_error( "Can't write to log file '".$this->logFile."': ".$error['message'].' @ '.$error['file'].'/'.$error['line'], E_USER_ERROR );
- }
- }
- } elseif ( $this->logFd ) {
- fprintf( $this->logFd, $message."\n" );
- }
-
- $message = $code.' ['.$string.']';
- if ( $level <= $this->syslogLevel )
- syslog( self::$syslogPriorities[$level], $message );
- if ( $level <= $this->databaseLevel ) {
- try {
- global $dbConn;
- $sql = 'INSERT INTO Logs ( TimeKey, Component, Pid, Level, Code, Message, File, Line ) values ( ?, ?, ?, ?, ?, ?, ?, ? )';
- $stmt = $dbConn->prepare( $sql );
- $result = $stmt->execute( array( sprintf( '%d.%06d', $time['sec'], $time['usec'] ), $this->id, getmypid(), $level, $code, $string, $file, $line ) );
- } catch(PDOException $ex) {
- $this->databaseLevel = self::NOLOG;
- Error("Can't write log entry '$sql': ". $ex->getMessage());
- }
+ $rootPath = $_SERVER['DOCUMENT_ROOT'];
+ $file = preg_replace('/^'.addcslashes($rootPath,'/').'\/?/', '', $file);
}
- // This has to be last as trigger_error can be fatal
- if ( $level <= $this->weblogLevel ) {
- if ( $this->useErrorLog )
- error_log( $message, 0 );
- else
- trigger_error( $message, self::$phpErrorLevels[$level] );
+ }
+
+ if ( $this->useErrorLog ) {
+ $message .= ' at '.$file.' line '.$line;
+ } else {
+ $message = $message;
+ }
+
+ if ( $level <= $this->termLevel ) {
+ if ( $this->hasTerm )
+ print($message."\n");
+ else
+ print(preg_replace("/\n/", '
', htmlspecialchars($message) ).'
');
+ }
+
+ if ( $level <= $this->fileLevel ) {
+ if ( $this->useErrorLog ) {
+ if ( !error_log($message."\n", 3, $this->logFile) ) {
+ if ( strnatcmp(phpversion(), '5.2.0') >= 0 ) {
+ $error = error_get_last();
+ trigger_error("Can't write to log file '".$this->logFile."': ".$error['message'].' @ '.$error['file'].'/'.$error['line'], E_USER_ERROR);
+ }
+ }
+ } else if ( $this->logFd ) {
+ fprintf($this->logFd, $message."\n");
+ }
+ }
+
+ $message = $code.' ['.$string.']';
+ if ( $level <= $this->syslogLevel )
+ syslog( self::$syslogPriorities[$level], $message );
+
+ if ( $level <= $this->databaseLevel ) {
+ try {
+ global $dbConn;
+ $sql = 'INSERT INTO Logs ( TimeKey, Component, Pid, Level, Code, Message, File, Line ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ? )';
+ $stmt = $dbConn->prepare($sql);
+ $result = $stmt->execute(array(sprintf('%d.%06d', $time['sec'], $time['usec']), $this->id, getmypid(), $level, $code, $string, $file, $line));
+ } catch(PDOException $ex) {
+ $this->databaseLevel = self::NOLOG;
+ Error("Can't write log entry '$sql': ". $ex->getMessage());
+ }
+ }
+ // This has to be last as trigger_error can be fatal
+ if ( $level <= $this->weblogLevel ) {
+ if ( $this->useErrorLog ) {
+ error_log($message, 0);
+ } else {
+ trigger_error($message, self::$phpErrorLevels[$level]);
}
}
}