function(ContainerInterface $container) { return new Monolog\Logger('incoviba', [ new Monolog\Handler\FilterHandler( ($container->has('ENVIRONMENT') and $container->get('ENVIRONMENT') === 'development') ? (new Monolog\Handler\StreamHandler('/logs/debug.log')) ->setFormatter($container->get(Monolog\Formatter\LineFormatter::class)) : (new Monolog\Handler\RotatingFileHandler('/logs/debug.log', 10)) ->setFormatter(new Monolog\Formatter\LineFormatter(null, null, false, false, true)), Monolog\Level::Debug, Monolog\Level::Debug ), new Monolog\Handler\FilterHandler( ($container->has('ENVIRONMENT') and $container->get('ENVIRONMENT') === 'development') ? (new Monolog\Handler\StreamHandler('/logs/notices.log')) ->setFormatter($container->get(Monolog\Formatter\LineFormatter::class)) : (new Monolog\Handler\RotatingFileHandler('/logs/info.log', 10)) ->setFormatter(new Monolog\Formatter\LineFormatter(null, null, false, false, true)), Monolog\Level::Info, Monolog\Level::Warning, ), new Monolog\Handler\FilterHandler( ($container->has('ENVIRONMENT') and $container->get('ENVIRONMENT') === 'development') ? (new Monolog\Handler\StreamHandler('/logs/error.log')) ->setFormatter($container->get(Monolog\Formatter\LineFormatter::class)) : (new Monolog\Handler\RotatingFileHandler('/logs/error.log', 10)) ->setFormatter($container->get(Monolog\Formatter\LineFormatter::class)), Monolog\Level::Error, Monolog\Level::Error ), new Monolog\Handler\FilterHandler( ($container->has('ENVIRONMENT') and $container->get('ENVIRONMENT') === 'development') ? (new Monolog\Handler\StreamHandler('/logs/critical.log')) ->setFormatter($container->get(Monolog\Formatter\LineFormatter::class)) : (new Monolog\Handler\RotatingFileHandler('/logs/critical.log', 10)) ->setFormatter($container->get(Monolog\Formatter\LineFormatter::class)), Monolog\Level::Critical ) ], [ $container->get(Monolog\Processor\PsrLogMessageProcessor::class), $container->get(Monolog\Processor\IntrospectionProcessor::class), $container->get(Monolog\Processor\MemoryUsageProcessor::class), $container->get(Monolog\Processor\MemoryPeakUsageProcessor::class) ]); } ];