コード例 #1
0
ファイル: LogConfig.php プロジェクト: dru-id/druid-php-sdk
 /**
  * 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);
 }
コード例 #2
0
 /** 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;
     }
 }
コード例 #3
0
 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));
 }
コード例 #4
0
 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);
 }
コード例 #5
0
 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;
     }
 }