diff --git a/bootstrap/app.php b/bootstrap/app.php index 33b7ac22aa..3517e6246b 100644 --- a/bootstrap/app.php +++ b/bootstrap/app.php @@ -13,6 +13,10 @@ declare(strict_types=1); | */ +use Monolog\Formatter\LineFormatter; +use Monolog\Handler\RotatingFileHandler; +use Monolog\Logger; + bcscale(12); @@ -46,6 +50,35 @@ $app->singleton( FireflyIII\Exceptions\Handler::class ); +/* Overrule logging */ +$app->configureMonologUsing( + function (Logger $monolog) use ($app) { + $interface = php_sapi_name(); + $path = $app->storagePath() . '/logs/ff3-' . $interface . '.log'; + $level = 'debug'; + if ($app->bound('config')) { + $level = $app->make('config')->get('app.log_level', 'debug'); + } + $levels = [ + 'debug' => Logger::DEBUG, + 'info' => Logger::INFO, + 'notice' => Logger::NOTICE, + 'warning' => Logger::WARNING, + 'error' => Logger::ERROR, + 'critical' => Logger::CRITICAL, + 'alert' => Logger::ALERT, + 'emergency' => Logger::EMERGENCY, + ]; + + $useLevel = $levels[$level]; + + $formatter = new LineFormatter(null, null, true, true); + $handler = new RotatingFileHandler($path, 5, $useLevel); + $handler->setFormatter($formatter); + $monolog->pushHandler($handler); + } +); + /* |-------------------------------------------------------------------------- | Return The Application