diff --git a/app/setup/setups/logs.php b/app/setup/setups/logs.php index fd7cd54..6c528ff 100644 --- a/app/setup/setups/logs.php +++ b/app/setup/setups/logs.php @@ -15,7 +15,8 @@ return [ : (new Monolog\Handler\RotatingFileHandler('/logs/error.log', 10)) ->setFormatter($container->get(Monolog\Formatter\LineFormatter::class)), Monolog\Level::Error, - Monolog\Level::Error + Monolog\Level::Error, + false ), new Monolog\Handler\FilterHandler( ($container->has('ENVIRONMENT') and $container->get('ENVIRONMENT') === 'development') @@ -31,7 +32,8 @@ return [ ->setFormatter($container->get(Monolog\Formatter\LineFormatter::class)) : new Monolog\Handler\RedisHandler($container->get(Predis\ClientInterface::class), 'logs:notices'), Monolog\Level::Debug, - Monolog\Level::Info + Monolog\Level::Info, + false ), new Monolog\Handler\FilterHandler( ($container->has('ENVIRONMENT') and $container->get('ENVIRONMENT') === 'development') @@ -40,7 +42,8 @@ return [ : (new Incoviba\Common\Implement\Log\MySQLHandler($container->get(Incoviba\Common\Define\Connection::class))) ->setFormatter(new Incoviba\Common\Implement\Log\PDOFormatter()), Monolog\Level::Notice, - Monolog\Level::Warning + Monolog\Level::Warning, + false ) ], [ $container->get(Incoviba\Common\Implement\Log\UserProcessor::class), @@ -61,5 +64,16 @@ return [ $container->get(Monolog\Processor\MemoryPeakUsageProcessor::class), $container->get(Monolog\Processor\PsrLogMessageProcessor::class), ]); + }, + 'accessLogger' => function(ContainerInterface $container) { + return new Monolog\Logger('access', [ + new Monolog\Handler\RedisHandler($container->get(Predis\ClientInterface::class), 'logs:access'), + ], [ + $container->get(Monolog\Processor\IntrospectionProcessor::class), + $container->get(Monolog\Processor\WebProcessor::class), + $container->get(Monolog\Processor\MemoryUsageProcessor::class), + $container->get(Monolog\Processor\MemoryPeakUsageProcessor::class), + $container->get(Monolog\Processor\PsrLogMessageProcessor::class), + ]); } ]; diff --git a/app/setup/setups/middlewares.php b/app/setup/setups/middlewares.php index a6215a1..ea16f68 100644 --- a/app/setup/setups/middlewares.php +++ b/app/setup/setups/middlewares.php @@ -22,5 +22,19 @@ return [ $container->get('simplePaths'), $container->get('externalPaths'), ); + }, + Incoviba\Middleware\NotFound::class => function(ContainerInterface $container) { + return new Incoviba\Middleware\NotFound( + $container->get('accessLogger'), + $container->get(Psr\Http\Message\ResponseFactoryInterface::class), + $container->get(Incoviba\Common\Alias\View::class) + ); + }, + Incoviba\Middleware\NotAllowed::class => function(ContainerInterface $container) { + return new Incoviba\Middleware\NotAllowed( + $container->get('accessLogger'), + $container->get(Psr\Http\Message\ResponseFactoryInterface::class), + $container->get(Incoviba\Common\Alias\View::class) + ); } ]; diff --git a/app/setup/setups/views.php b/app/setup/setups/views.php index 816bf80..ad75a35 100644 --- a/app/setup/setups/views.php +++ b/app/setup/setups/views.php @@ -18,11 +18,11 @@ return [ if ($global_variables['login']->isIn()) { $global_variables['user'] = $global_variables['login']->getUser(); } - return new Incoviba\Common\Alias\View( + return (new Incoviba\Common\Alias\View( $folders->get('templates'), $folders->get('cache'), null, $global_variables - ); + ))->setOfuscator($container->get(Incoviba\Service\Ofuscator::class)); } ];