/**
  * @param BaseApp $app
  */
 public function register(BaseApp $app)
 {
     $app->set('errorLogger', function (BaseApp $app) {
         $logger = new \Monolog\Logger('errorLogger');
         $handler = new \Monolog\Handler\ErrorLogHandler();
         if (!$app->isCli()) {
             $handler->pushProcessor(new \Monolog\Processor\WebProcessor());
             $format = '%level_name%: %message% %extra.server%%extra.url%';
         } else {
             $format = '%level_name%: %message%';
         }
         $handler->setFormatter(new \Monolog\Formatter\LineFormatter($format, null, true));
         $logger->pushHandler($handler);
         return $logger;
     });
     $app->set('whoopsDebugErrorPageHandler', function (BaseApp $app) {
         $prettyPageHandler = new \Whoops\Handler\PrettyPageHandler();
         if ($app->getConfig()->has('editor')) {
             $prettyPageHandler->setEditor($app->getConfig()->get('editor'));
         }
         return $prettyPageHandler;
     });
     $app->set('whoopsErrorHandler', function (BaseApp $app) {
         $plainTextHandler = new \Whoops\Handler\PlainTextHandler();
         $plainTextHandler->setLogger($app->get('errorLogger'));
         if (!$app->isCli()) {
             $plainTextHandler->loggerOnly(true);
         }
         return $plainTextHandler;
     });
     $app->set('whoops', function (BaseApp $app) {
         $whoops = new \Whoops\Run();
         if (ini_get('display_errors')) {
             $whoops->pushHandler($app->get('whoopsDebugErrorPageHandler'));
         }
         // Handles cli output and logging
         $whoops->pushHandler($app->get('whoopsErrorHandler'));
         return $whoops;
     });
     $app->get('whoops')->register();
 }
Beispiel #2
0
 public static function ini($root = "")
 {
     require $root . "../core/Associates/Whoops/vendor/autoload.php";
     //
     if (Config::get('loggin.debug')) {
         $whoops = new \Whoops\Run();
         $errorPage = new \Whoops\Handler\PrettyPageHandler();
         //
         $errorPage->setPageTitle(Config::get('loggin.msg'));
         // Set the page's title
         $errorPage->setEditor("sublime");
         //
         $whoops->pushHandler($errorPage);
         $whoops->register();
     } else {
         $whoops = new \Whoops\Run();
         $errorPage = new \Whoops\Handler\PlainTextHandler();
         $errorPage->msg = Config::get('loggin.msg');
         $errorPage->bg_color = Config::get('loggin.bg');
         $errorPage->handle();
         $whoops->pushHandler($errorPage);
         $whoops->register();
     }
 }