public function testPushPopHandler()
 {
     $logger = new Logger(__METHOD__);
     $handler1 = $this->getMock('Monolog\\Handler\\NullHandler', array('handle'));
     $handler2 = $this->getMock('Monolog\\Handler\\NullHandler', array('handle'));
     $handler3 = $this->getMock('Monolog\\Handler\\NullHandler', array('handle'));
     $logger->pushHandler($handler1);
     $logger->pushHandler($handler2);
     $logger->pushHandler($handler3);
     $this->assertEquals($handler3, $logger->popHandler());
     $this->assertEquals($handler2, $logger->popHandler());
     $this->assertEquals($handler1, $logger->popHandler());
 }
 /**
  * @covers Migration\Logger\Logger::addRecord
  * @covers Migration\Logger\Logger::getMessages
  * @return void
  */
 public function testAddRecord()
 {
     $infoMessage = 'info1';
     $errorMessage = 'error1';
     $consoleHandler = $this->getMockBuilder('\\Migration\\Logger\\ConsoleHandler')->disableOriginalConstructor()->setMethods(['handle'])->getMock();
     $consoleHandler->expects($this->any())->method('handle')->will($this->returnValue(true));
     $this->logger->pushHandler($consoleHandler);
     $this->logger->addRecord(\Monolog\Logger::INFO, $infoMessage);
     $this->logger->addRecord(\Monolog\Logger::ERROR, $errorMessage);
     $messages = \Migration\Logger\Logger::getMessages();
     $this->assertEquals($infoMessage, $messages[\Monolog\Logger::INFO][0]);
     $this->assertEquals($errorMessage, $messages[\Monolog\Logger::ERROR][0]);
     $this->logger->clearMessages();
     $this->assertEmpty(\Migration\Logger\Logger::getMessages());
 }
Example #3
0
 /**
  * @param string $logName
  * @param int $logLevel
  * @param string $logPath
  * @return \PHPQueue\Logger
  */
 public static function createLogger($logName = null, $logLevel = Logger::WARNING, $logPath = null)
 {
     if (empty(self::$all_logs[$logName])) {
         $logger = new Logger($logName);
         $logger->pushHandler(new \Monolog\Handler\StreamHandler($logPath, $logLevel));
         self::$all_logs[$logName] = $logger;
     }
     return self::$all_logs[$logName];
 }
 public function register()
 {
     //TODO: вызывать исключение, если не заданы необходимые настройки (['logger']['name'] например)
     $this->container['logger.logger'] = function ($container) {
         $config = $container['logger'];
         $logger = new Logger($config['name']);
         $logger->pushHandler($container['logger.handler']);
         return $logger;
     };
     $this->container['logger.handler'] = function ($container) {
         $config = $container['logger'];
         return new StreamHandler(rtrim($config['path'], '/') . '/' . $config['name'] . '.log', $container['logger.level']);
     };
     $this->container['logger.level'] = function ($container) {
         if ($container['environment'] == 'production') {
             return Logger::ERROR;
         } else {
             return Logger::DEBUG;
         }
     };
 }
Example #5
0
};
$container['notAllowedHandler'] = function ($c) {
    return function ($req, $res) {
        return $res->error(405, 'Method Not Allowed', 405);
    };
};
//Ç©ÃûÑéÖ¤ÃØÔ¿
$container['key'] = function ($c) {
    return 'ihc&*()_';
};
// -----------------------------------------------------------------------------
// Service factories
// -----------------------------------------------------------------------------
// // monolog
$container['logger'] = function ($c) {
    $log_path = SITEDATA . '/log/api/' . date('Ym');
    if (!is_dir($log_path)) {
        mkdir($log_path, 0755, true);
    }
    $level = ENV === 'prod' ? Logger::ERROR : Logger::DEBUG;
    $logger = new Logger('cncn-api');
    $logger->pushProcessor(new WebProcessor($c['request']->getServerParams()));
    $logger->pushHandler(new StreamHandler($log_path . '/api.log', $level));
    return $logger;
};
// -----------------------------------------------------------------------------
// Action factories
// -----------------------------------------------------------------------------
// $container['App\Action\HomeAction'] = function ($c) {
//     return new App\Action\HomeAction();
// };
Example #6
0
 *  @package    GozintograPHP
 *  @license    http://www.opensource.org/licenses/bsd-license.php BSD 3-clause License
 *  @copyright  (c) 2008-2014 Christoph Jeschke. All rights reserved
 */
/**
 * Zend_Console_Getopt is used to handle the console options
 * @todo The libraries have to be written into one single file
 */
namespace GozintograPHP;

require dirname(dirname(dirname(__FILE__))) . '/vendor/autoload.php';
namespace Monolog;

// setup monolog
$logger = new Logger('gozintographp');
$logger->pushHandler(new Handler\StreamHandler('php://stderr'), Logger::WARNING);
namespace GozintograPHP;

$errorHandler = new ErrorHandler($logger);
//  set default exception handler
set_exception_handler(array('\\GozintograPHP\\ExceptionHandler', 'setDefaultExceptionHandler'));
//  set default error handler
set_error_handler(array($errorHandler, 'setDefaultErrorHandler'));
//  be sure, register_argv_argc will be filled
ini_set('register_argv_argc', 'On');
/**
 *  Set up console option (arg) handling
 *  It takes several arguments:
 *  <ul>
 *  <li>
 *      <kbd>--usage</kbd> or <kbd>-u</kbd> shows the default usage information