/**
  * @param string $ident String identifying the application within the syslog stream.
  * @param $facility Syslog facility.
  */
 public function __construct($ident = 'SilverStripe_log', $facility = LOG_USER)
 {
     $this->monolog = new \Monolog\Logger('application');
     $syslog = new \Monolog\Handler\SyslogHandler($ident, $facility, \Monolog\Logger::DEBUG);
     $formatter = new \Monolog\Formatter\LineFormatter("%level_name%: %message% %context%");
     $syslog->setFormatter($formatter);
     $this->monolog->pushHandler($syslog);
 }
Exemplo n.º 2
1
 public function logSomething($text)
 {
     echo $text . " greg " . get_called_class();
     $log = new \Monolog\Logger('name2');
     $log->pushHandler(new \Monolog\Handler\StreamHandler('../output/app.log', \Monolog\Logger::WARNING));
     $log->addWarning('Foo - $text');
 }
Exemplo n.º 3
1
 /**
  * Short function to debug log objects to `cog://logs/debug.log`
  * 
  * @see \Psr\Log\LoggerInterface::debug()
  * 
  * @param mixed $var,... Unlimited number of variables to log
  */
 function l()
 {
     $logger = new \Monolog\Logger('debug');
     $logger->pushHandler(new \Message\Cog\Logging\TouchingStreamHandler('cog://logs/debug.log'));
     foreach (func_get_args() as $message) {
         $message = print_r($message, true);
         $logger->debug($message);
     }
 }
 public function setUp()
 {
     parent::setUp();
     $apiLoginId = getenv('AUTHORIZE_NET_API_LOGIN_ID');
     $transactionKey = getenv('AUTHORIZE_NET_TRANSACTION_KEY');
     //        //todo: Remove this before final commit
     $apiLoginId = '3wM8sJ9qR';
     $transactionKey = '3K2e3z44EKz3g326';
     if ($apiLoginId && $transactionKey) {
         $logger = new \Monolog\Logger('authorizenet_cim');
         $logger->pushHandler(new \Monolog\Handler\StreamHandler('/var/log/php/debug.log', \Monolog\Logger::DEBUG));
         $logger->pushHandler(new \Monolog\Handler\FirePHPHandler());
         $adapter = new PsrLogAdapter($logger);
         $logPlugin = new LogPlugin($adapter, MessageFormatter::DEBUG_FORMAT);
         $client = new Client();
         $client->addSubscriber($logPlugin);
         $this->gateway = new CIMGateway($client, $this->getHttpRequest());
         $this->gateway->setDeveloperMode(true);
         $this->gateway->setApiLoginId($apiLoginId);
         $this->gateway->setTransactionKey($transactionKey);
     } else {
         // No credentials were found, so skip this test
         $this->markTestSkipped();
     }
 }
 private function createLogger()
 {
     $logger = new \Monolog\Logger('my_logger');
     $logger->pushHandler(new \Monolog\Handler\StreamHandler('douban.log', \Monolog\Logger::DEBUG));
     $logger->pushHandler(new \Symfony\Bridge\Monolog\Handler\FirePHPHandler());
     return $logger;
 }
Exemplo n.º 6
0
 /**
  *
  */
 public function buildLogger($channel, $handlers = null)
 {
     // Create a new logger
     $logger = new \Monolog\Logger($channel);
     // Setup processors
     $logger->pushProcessor(new \Monolog\Processor\IntrospectionProcessor());
     $logger->pushProcessor(new \Monolog\Processor\ProcessIdProcessor());
     $logger->pushProcessor(new \Monolog\Processor\WebProcessor());
     // Are we in CLI/verbose mode?
     if (\z\app()->isCli() === true) {
         // Define the level
         if (\z\app()->isVerbose() === true) {
             $level = \Monolog\Logger::DEBUG;
         } else {
             $level = \Monolog\Logger::INFO;
         }
         // Redirect to standard output
         $handler = new \Monolog\Handler\StreamHandler('php://stdout', $level);
         // Format for CLI
         $handler->setFormatter(new \fbenard\Zero\Services\Formatters\CliLogFormatter());
     } else {
         // Redirect to /dev/null
         $handler = new \Monolog\Handler\NullHandler();
     }
     // Push the handler
     $logger->pushHandler($handler);
     // Parse each handler
     if (is_array($handlers) === true) {
         foreach ($handlers as $handler) {
             // Push the handler
             $logger->pushHandler($handler);
         }
     }
     return $logger;
 }
Exemplo n.º 7
0
 /**
  * GetLogger()
  *
  * Sets up logging variable for Monolog if not already defined (unlikely).
  * Used in a Singleton-like fashion to ensure one instance of it is used.
  *
  *
  * @return Monolog\Logger  Instance of logger
  *
  * @access public
  *
  */
 function GetLogger()
 {
     if ($this->log == NULL) {
         $this->log = new Monolog\Logger('name');
         $this->log->pushHandler(new Monolog\Handler\StreamHandler(__FILE__ . ".log", Monolog\Logger::INFO));
     }
     return $this->log;
 }
Exemplo n.º 8
0
 public function setServicesOptional()
 {
     $this->services['ErrorHandler'] = function ($services) {
         $config = $services['Config'];
         $log = new \Monolog\Logger('system');
         if ($config->getSetting('core.displayErrors')) {
             // ini_set('display_errors', 1);
             // ini_set('display_startup_errors', 1);
             // error_reporting(E_ALL);
             $log->pushHandler(new \Monolog\Handler\BrowserConsoleHandler());
         }
         $log->pushHandler(new \Monolog\Handler\StreamHandler($services['ProjectPath'] . 'error.txt', \Monolog\Logger::DEBUG));
         return $log;
     };
     \Monolog\ErrorHandler::register($this->services['ErrorHandler']);
     $this->services['ModelFactory'] = function ($services) {
         $config = $services['Config'];
         $modelFactory = new \Mwyatt\Core\Factory\Model();
         $modelFactory->setDefaultNamespace($config->getSetting('projectBaseNamespace') . 'Model\\');
         return $modelFactory;
     };
     $this->services['IteratorFactory'] = function ($services) {
         $config = $services['Config'];
         $iteratorFactory = new \Mwyatt\Core\Factory\Iterator();
         $iteratorFactory->setDefaultNamespace($config->getSetting('projectBaseNamespace') . 'Iterator\\');
         return $iteratorFactory;
     };
     $this->services['MapperFactory'] = function ($services) {
         $config = $services['Config'];
         $mapperFactory = new \Mwyatt\Core\Factory\Mapper($services['Database'], $services['ModelFactory'], $services['IteratorFactory']);
         $mapperFactory->setDefaultNamespace($config->getSetting('projectBaseNamespace') . 'Mapper\\');
         return $mapperFactory;
     };
     $this->services['RepositoryFactory'] = function ($services) {
         $config = $services['Config'];
         $repositoryFactory = new \Mwyatt\Core\Factory\Repository($services['MapperFactory']);
         $repositoryFactory->setDefaultNamespace($config->getSetting('projectBaseNamespace') . 'Repository\\');
         return $repositoryFactory;
     };
     $this->services['Mail'] = function ($services) {
         $config = $services['Config'];
         $transport = \Swift_SmtpTransport::newInstance($config->getSetting('mail.host'), $config->getSetting('mail.port'), $config->getSetting('mail.security'));
         $transport->setUsername($config->getSetting('mail.username'));
         $transport->setPassword($config->getSetting('mail.appPassword'));
         $swiftMailer = \Swift_Mailer::newInstance($transport);
         return new \Mwyatt\Core\Mail($swiftMailer);
     };
     $this->services['Database'] = function ($services) {
         $config = $services['Config'];
         $database = new \Mwyatt\Core\Database\Pdo();
         $database->connect($config->getSetting('database.host'), $config->getSetting('database.basename'), $config->getSetting('database.username'), $config->getSetting('database.password'));
         return $database;
     };
 }
 /**
  * @inheritdoc
  */
 public function register(Application $app)
 {
     $app['saved_searches_service_factory'] = $app->share(function ($app) {
         $consumer = new Consumer($app['config']['uitid']['base_url'], $app['uitid_consumer_credentials']);
         return new SavedSearchesServiceFactory($consumer);
     });
     $app['saved_searches'] = $app->share(function (Application $app) {
         /** @var \Symfony\Component\HttpFoundation\Session\SessionInterface $session */
         $session = $app['session'];
         /** @var \CultuurNet\Auth\User $minimalUserData */
         $minimalUserData = $session->get('culturefeed_user');
         /* @var \CultuurNet\UDB3\SavedSearches\SavedSearchesServiceFactory $serviceFactory */
         $serviceFactory = $app['saved_searches_service_factory'];
         return $serviceFactory->withTokenCredentials($minimalUserData->getTokenCredentials());
     });
     $app['saved_searches_logger'] = $app->share(function (Application $app) {
         $logger = new \Monolog\Logger('saved_searches');
         $logger->pushHandler(new \Monolog\Handler\StreamHandler(__DIR__ . '/../log/saved_searches.log'));
         return $logger;
     });
     $app['saved_searches_repository'] = $app->share(function (Application $app) {
         $UiTIDRepository = new UiTIDSavedSearchRepository($app['saved_searches']);
         $UiTIDRepository->setLogger($app['saved_searches_logger']);
         $user = $app['current_user'];
         $fixedRepository = new FixedSavedSearchRepository($user);
         $repository = new CombinedSavedSearchRepository($fixedRepository, $UiTIDRepository);
         return $repository;
     });
 }
Exemplo n.º 10
0
 private function preInit()
 {
     // Prepare app
     $this->API = new Slim();
     // Create monolog logger and store logger in container as singleton
     // (Singleton resources retrieve the same log resource definition each time)
     $this->API->container->singleton('log', function () {
         $log = new \Monolog\Logger('slim-skeleton');
         $log->pushHandler(new \Monolog\Handler\StreamHandler(getcwd() . '/logs/app.log', \Monolog\Logger::DEBUG));
         return $log;
     });
     // Set up the database
     $this->setupDatabase();
     // Cache Middleware (inner)
     $this->API->add(new \API\Middleware\Cache('/'));
     // Parses JSON body
     $this->API->add(new \Slim\Middleware\ContentTypes());
     // Manage Rate Limit
     // An API key must be set in the following $this->API->user['apikey'];
     //$this->API->add(new \API\Middleware\RateLimit('/'));
     // JSON Middleware
     $this->API->add(new \API\Middleware\JSON('/'));
     // Oauth authentication should be placed here
     //$this->API->add(new \API\Middleware\OauthAuthentication('/', $this->config));
 }
Exemplo n.º 11
0
 public function __construct()
 {
     $queryLogger = new \Monolog\Logger('Queries');
     $fileHandler = new \Monolog\Handler\RotatingFileHandler(storage_path() . '/logs/query.log');
     $lineFormatter = new \Monolog\Formatter\LineFormatter("%message% %context% %extra%\n", null, true, true);
     $fileHandler->setFormatter($lineFormatter);
     $queryLogger->pushHandler($fileHandler);
     if (php_sapi_name() !== 'cli') {
         $queryLogger->info("\n\n=======\n{$_SERVER['REQUEST_METHOD']}\n{$_SERVER['REQUEST_URI']}" . " \n" . Request::server('HTTP_REFERER') . "\n" . date('Y-m-d H:i:s') . "\n=========");
     }
     Event::listen('cache.missed', function ($key) use($queryLogger) {
         $queryLogger->info('cache.missed');
         $queryLogger->info("\t" . $key);
     });
     Event::listen('cache.hit', function ($key) use($queryLogger) {
         $queryLogger->info('cache.hit');
         $queryLogger->info("\t" . $key);
     });
     Event::listen('cache.write', function ($key) use($queryLogger) {
         $queryLogger->info('cache.write');
         $queryLogger->info("\t" . $key);
     });
     Event::listen('cache.delete', function ($key) use($queryLogger) {
         $queryLogger->info('cache.delete');
         $queryLogger->info("\t" . $key);
     });
     Event::listen("illuminate.query", function ($query, $bindings, $time) use($queryLogger) {
         $queryLogger->info("illuminate.query");
         $queryLogger->info("\t" . $query, $bindings);
         $queryLogger->info("\t\t{$time} ms", $bindings);
     });
 }
Exemplo n.º 12
0
 function setUp()
 {
     $logger = new \Monolog\Logger("test");
     $logger->pushHandler(new SilentLogger());
     $parser = new Parser($logger);
     $this->result = $parser->load($this->getFiles());
 }
Exemplo n.º 13
0
 public function setUp()
 {
     $this->notifier = new NotifierMock(array('projectId' => 1, 'projectKey' => 'api_key'));
     $log = new \Monolog\Logger('billing');
     $log->pushHandler(new \Airbrake\MonologHandler($this->notifier));
     $log->addError('charge failed', array('client_id' => 123));
 }
Exemplo n.º 14
0
 /**
  * Add handlers to the Logger
  *
  * @param Monolog\Handler\HandlerInterface[] Array of Monolog handlers
  */
 private function addHandlers(array $handlers)
 {
     // We need to reverse the array because Monolog "pushes" handlers to top of the stack
     foreach (array_reverse($handlers) as $handler) {
         $this->logger->pushHandler($handler);
     }
 }
 /**
  * @inheritdoc
  */
 public function register(Application $app)
 {
     $app['saved_searches_service_factory'] = $app->share(function ($app) {
         $consumer = new Consumer($app['config']['uitid']['base_url'], $app['culturefeed_consumer_credentials']);
         return new SavedSearchesServiceFactory($consumer);
     });
     $app['saved_searches'] = $app->share(function (Application $app) {
         /* @var \CultuurNet\UDB3\SavedSearches\SavedSearchesServiceFactory $serviceFactory */
         $serviceFactory = $app['saved_searches_service_factory'];
         $tokenCredentials = $app['culturefeed_token_credentials'];
         return $serviceFactory->withTokenCredentials($tokenCredentials);
     });
     $app['saved_searches_logger'] = $app->share(function (Application $app) {
         $logger = new \Monolog\Logger('saved_searches');
         $logger->pushHandler(new \Monolog\Handler\StreamHandler(__DIR__ . '/../../log/saved_searches.log'));
         return $logger;
     });
     $app['saved_searches_repository'] = $app->share(function (Application $app) {
         $uitIDRepository = new UiTIDSavedSearchRepository($app['saved_searches']);
         $uitIDRepository->setLogger($app['saved_searches_logger']);
         $user = $app['current_user'];
         $fixedRepository = new FixedSavedSearchRepository($user);
         $repository = new CombinedSavedSearchRepository($fixedRepository, $uitIDRepository);
         return $repository;
     });
 }
Exemplo n.º 16
0
 /**
  * Create logger instance.
  *
  * @param string $channelName
  *
  * @return \Psr\Log\LoggerInterface
  */
 public function create($channelName = 'setup-cron')
 {
     $logger = new \Monolog\Logger($channelName);
     $path = BP . '/var/log/update.log';
     $logger->pushHandler(new \Monolog\Handler\StreamHandler($path));
     return $logger;
 }
Exemplo n.º 17
0
 private function initialize($name)
 {
     $log_file = Env::get('log_path') . date('Y-m-d') . '.log';
     $log = new \Monolog\Logger($name);
     $log->pushHandler(new \Monolog\Handler\StreamHandler($log_file));
     self::$logger[$name] = $log;
 }
Exemplo n.º 18
0
 public function testFacility()
 {
     $log = new \Monolog\Logger('test');
     $log->pushHandler(new Monolog\Handler\StreamHandler('monolog.log', \Monolog\Logger::INFO));
     $this->_object = new MW_Logger_Monolog($log, array('test'));
     $this->_object->log('error', MW_Logger_Abstract::ERR);
     $this->assertFalse(file_exists('monolog.log'));
 }
Exemplo n.º 19
0
 /**
  * 日志类 monolog/monolog
  * @param $class
  * @return \Monolog\Logger
  */
 public static function getLogger($class)
 {
     $config = self::getConfig('resource');
     // create a log channel
     $log = new \Monolog\Logger($class);
     $log->pushHandler(new \Monolog\Handler\StreamHandler($config['logpath']['path']));
     return $log;
 }
Exemplo n.º 20
0
 /**
  * Test get logger object
  * 
  * @covers Drapi\Base\Log::getLogger
  */
 public function testGetLogger()
 {
     $this->__Log->setupLogger('testing', new \Monolog\Handler\TestHandler());
     $logger = $this->__Log->getLogger('testing');
     $loggerTest = new \Monolog\Logger('testing');
     $loggerTest->pushHandler(new \Monolog\Handler\TestHandler());
     $this->assertEquals($loggerTest, $logger);
 }
Exemplo n.º 21
0
 public function testFacility()
 {
     $log = new \Monolog\Logger('test');
     $log->pushHandler(new \Monolog\Handler\StreamHandler('monolog.log', \Monolog\Logger::INFO));
     $this->object = new \Aimeos\MW\Logger\Monolog($log, array('test'));
     $this->object->log('error', \Aimeos\MW\Logger\Base::ERR);
     $this->assertFalse(file_exists('monolog.log'));
 }
Exemplo n.º 22
0
 /**
  * Registers services on the given container.
  *
  * This method should only be used to configure services and parameters.
  * It should not get services.
  *
  * @param Container|ContainerInterface $pimple A container instance
  *
  * @return PhpRenderer
  */
 public function register(Container $pimple)
 {
     $settings = $pimple->get('settings')['logger'];
     $logger = new \Monolog\Logger($settings['name']);
     $logger->pushProcessor(new \Monolog\Processor\UidProcessor());
     $logger->pushHandler(new \Monolog\Handler\StreamHandler($settings['path'], \Monolog\Logger::DEBUG));
     $pimple['logger'] = $logger;
 }
Exemplo n.º 23
0
 public function init()
 {
     if ($this->logger instanceof \Psr\Log\LoggerInterface) {
         return;
     }
     $logger = new \Monolog\Logger($this->name);
     if (defined('PHPUNIT_RUNNING')) {
         $logger->pushHandler(new NullHandler());
     } else {
         if (empty($this->file)) {
             $logger->pushHandler(new ErrorLogHandler(ErrorLogHandler::OPERATING_SYSTEM, $this->level));
         } else {
             $logger->pushHandler(new StreamHandler($this->file, $this->level));
         }
     }
     $this->logger = $logger;
 }
Exemplo n.º 24
0
 protected function getACL()
 {
     $acl = new ACL();
     $logger = new \Monolog\Logger('ACL');
     $logger->pushHandler(new \Monolog\Handler\SyslogHandler('ACL Tests'));
     $acl->setLogger($logger);
     return $acl;
 }
Exemplo n.º 25
0
 /**
  * 
  * @param string $channel
  * @return \Monolog\Logger
  */
 public static function getLogger($channel)
 {
     if (isset(self::$loggers[$channel])) {
         return self::$loggers[$channel];
     } else {
         $logger = new \Monolog\Logger($channel);
         // Add generic handlers (i.e. for all channels)
         foreach (self::$genericHandlers as $handler) {
             $logger->pushHandler($handler);
         }
         // Add handlers for specific channels
         foreach ((array) self::$channelHandlers[$channel] as $handler) {
             $logger->pushHandler($handler);
         }
         self::$loggers[$channel] = $logger;
         return $logger;
     }
 }
Exemplo n.º 26
0
 protected function getMockLog()
 {
     $sysLog = new \Monolog\Handler\TestHandler();
     // Create the main logger of the app
     $logger = new \Monolog\Logger('error');
     $logger->pushHandler($sysLog);
     #assign the log to the project
     return $logger;
 }
 protected function initLog()
 {
     $tmp_filename = tempnam(sys_get_temp_dir(), 'eventlog');
     $monolog_logger = new Monolog\Logger('testing');
     $test_handler = new Monolog\Handler\TestHandler();
     $monolog_logger->pushHandler($test_handler);
     $event_log = new EventLog(new Writer($monolog_logger), $tmp_filename);
     return [$event_log, ['handler' => $test_handler, 'tmp_filename' => $tmp_filename]];
 }
Exemplo n.º 28
0
 public function bootMonolog()
 {
     $container = $this->app->getContainer();
     $container['logger'] = function ($c) {
         $settings = DotArray::newDotArray($c['settings']);
         $logger = new \Monolog\Logger($settings['app.name'] . 'Log');
         $logger->pushProcessor(new \Monolog\Processor\WebProcessor());
         $logger->pushProcessor(new \Monolog\Processor\UidProcessor());
         $logger->pushProcessor(new \Monolog\Processor\GitProcessor());
         $logger->pushHandler(new \Monolog\Handler\RotatingFileHandler(join(DIRECTORY_SEPARATOR, [$settings['paths.log'], date('Y-m-d') . '.log']), $settings['logger.max_files'], \Monolog\Logger::DEBUG));
         if ($settings['app.debug']) {
             $logger->pushHandler(new \Monolog\Handler\BrowserConsoleHandler());
         }
         if ($settings['features.error.slack'] && $settings->has('slack')) {
             $logger->pushHandler(new \Monolog\Handler\SlackHandler($settings['slack.token'], $settings['slack.channel'], $settings['slack.username']));
         }
         return $logger;
     };
 }
 protected function getTimerBridges()
 {
     $zendFrameworkOneLogger = new \Zend_Log(new \Zend_Log_Writer_Null());
     $zendFrameworkTwoLogger = new \Zend\Log\Logger();
     $writer = class_exists('Zend\\Log\\Writer\\Noop') ? new \Zend\Log\Writer\Noop() : new \Zend\Log\Writer\Null();
     $zendFrameworkTwoLogger->addWriter($writer);
     $monolog = new \Monolog\Logger('test');
     $monolog->pushHandler(new \Monolog\Handler\NullHandler());
     return array(new \fXmlRpc\Timing\ZendFrameworkOneTimerBridge($zendFrameworkOneLogger), new \fXmlRpc\Timing\ZendFrameworkTwoTimerBridge($zendFrameworkTwoLogger), new \fXmlRpc\Timing\MonologTimerBridge($monolog), null);
 }
Exemplo n.º 30
0
 public static function push($info)
 {
     $logFile = storage_path('logs/techdata-logs-' . date('Y-m-d') . '.log');
     if (!file_exists($logFile)) {
         file_put_contents($logFile, "");
     }
     $monolog = new \Monolog\Logger('log');
     $monolog->pushHandler(new StreamHandler($logFile), \Monolog\Logger::INFO);
     $monolog->info($info);
 }