diff options
author | Vincent Peugnet <33429034+vincent-peugnet@users.noreply.github.com> | 2020-04-29 02:00:10 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-04-29 02:00:10 +0200 |
commit | 3075127e848150da8b8d19b45325460346c415c6 (patch) | |
tree | 4b0e984fe5c75cdce4249952623b6c7f6926d78c /index.php | |
parent | 35e428c077dac7e57e6f6833562c88ae4a9867da (diff) | |
parent | 1619c194a32c1496f9015a491f5fa9dff350d47e (diff) | |
download | wcms-3075127e848150da8b8d19b45325460346c415c6.tar.gz wcms-3075127e848150da8b8d19b45325460346c415c6.zip |
Merge pull request #108 from vincent-peugnet/add-whoops
Add whoops
Diffstat (limited to 'index.php')
-rw-r--r-- | index.php | 23 |
1 files changed, 16 insertions, 7 deletions
@@ -1,21 +1,27 @@ <?php -use Wcms\Logger; - session_start(); require('./vendor/autoload.php'); try { - Logger::init('w_error.log', 2); -} catch (Throwable $e) { + Wcms\Logger::init('w_error.log', 2); +} catch (RuntimeException $e) { die('Unable to init logs: ' . $e->getMessage()); } $app = new Wcms\Application(); $app->wakeup(); +if (class_exists('Whoops\Run') && !empty(Wcms\Config::debug())) { + $whoops = new \Whoops\Run(); + $handler = new \Whoops\Handler\PrettyPageHandler(); + $handler->setEditor(\Wcms\Config::debug()); + $whoops->pushHandler($handler); + $whoops->register(); +} + if (isreportingerrors()) { Sentry\init([ 'dsn' => Wcms\Config::sentrydsn(), @@ -33,11 +39,14 @@ if (isreportingerrors()) { try { $matchoper = new Wcms\Routes(); $matchoper->match(); -} catch (Exception $e) { +} catch (Throwable $e) { if (isreportingerrors()) { Sentry\captureException($e); } - Logger::errorex($e, true); + Wcms\Logger::errorex($e, true); http_response_code(500); - echo '<h1>⚠ Woops ! There is a little problem : </h1>', $e->getMessage(), "\n"; + if (isset($whoops)) { + $whoops->handleException($e); + } + echo '<h1>⚠ Whoops ! There is a little problem : </h1>', $e->getMessage(), "\n"; } |