/** * Initialize objects for logging. We have two logs files: * - gid-last-request.log: to see logger for the last request * - gid-all-requests.log: to see all logger for all request * * @param \LoggerHierarchy Object to handle objects for logging. * @param mixed Either path to the config file or the configuration as * an array. * @return void */ public function configure(\LoggerHierarchy $hierarchy, $input = null) { //Create a logger layout $layout = new \LoggerLayoutPattern(); $layout->setConversionPattern("%d{Y-m-d H:i:s}[%r] %-5level %C.%M[%L] %msg%n"); $layout->activateOptions(); // Create an appender which logs to file $appLog = new \LoggerAppenderRollingFile('main'); $appLog->setFile($this->log_path . 'gid-all-requests.log'); $appLog->setAppend(true); $appLog->setMaxFileSize('2MB'); $appLog->setMaxBackupIndex(5); $appLog->setThreshold($this->threshold); $appLog->setLayout($layout); $appLog->activateOptions(); //Create an appender which logs Console $appConsole = new \LoggerAppenderFile('console'); $appConsole->setFile($this->log_path . 'gid-last-request.log'); $appConsole->setAppend(false); $appConsole->setThreshold($this->threshold); $appConsole->setLayout($layout); $appConsole->activateOptions(); // Add appenders to the root logger $root = $hierarchy->getRootLogger(); $root->addAppender($appLog); $root->addAppender($appConsole); }
/** Additional validation for the date pattern. */ public function activateOptions() { parent::activateOptions(); if (empty($this->datePattern)) { $this->warn("Required parameter 'datePattern' not set. Closing appender."); $this->closed = true; return; } }
public function testActivationDoesNotCreateTheFile() { $path = PHPUNIT_TEMP_DIR . "/doesnotexisthopefully.log"; @unlink($path); $appender = new LoggerAppenderFile(); $appender->setFile($path); $appender->activateOptions(); self::assertFalse(file_exists($path)); $event = LoggerTestHelper::getInfoEvent('bla'); $appender->append($event); self::assertTrue(file_exists($path)); }
public function testSimpleLogging() { $layout = new LoggerLayoutSimple(); $event = new LoggerLoggingEvent('LoggerAppenderFileTest', new Logger('mycategory'), LoggerLevel::getLevelWarn(), "my message"); $appender = new LoggerAppenderFile("mylogger"); $appender->setFileName('../../../target/temp/phpunit/TEST.txt'); $appender->setLayout($layout); $appender->activateOptions(); $appender->append($event); $appender->close(); $v = file_get_contents('../../../target/temp/phpunit/TEST.txt'); $e = "WARN - my message" . PHP_EOL; self::assertEquals($e, $v); }
public function activateOptions() { parent::activateOptions(); if ($this->compress && !extension_loaded('zlib')) { $this->warn("The 'zlib' extension is required for file compression. Disabling compression."); $this->compression = false; } }