File Manager Lite
Dir:
/home/codewavebd/public_html/vendor/monolog/monolog/src/Monolog/Processor
Upload
[..]
ClosureContextProcessor.php (1.48 KB)
Edit
Rename
Del
GitProcessor.php (1.94 KB)
Edit
Rename
Del
IntrospectionProcessor.php (3.7 KB)
Edit
Rename
Del
MercurialProcessor.php (2.05 KB)
Edit
Rename
Del
TagProcessor.php (1.17 KB)
Edit
Rename
Del
Edit: ClosureContextProcessor.php
<?php declare(strict_types=1); /* * This file is part of the Monolog package. * * (c) Jordi Boggiano <j.boggiano@seld.be> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Monolog\Processor; use Monolog\LogRecord; /** * Generates a context from a Closure if the Closure is the only value * in the context * * It helps reduce the performance impact of debug logs if they do * need to create lots of context information. If this processor is added * on the correct handler the context data will only be generated * when the logs are actually logged to that handler, which is useful when * using FingersCrossedHandler or other filtering handlers to conditionally * log records. */ class ClosureContextProcessor implements ProcessorInterface { public function __invoke(LogRecord $record): LogRecord { $context = $record->context; if (isset($context[0]) && 1 === \count($context) && $context[0] instanceof \Closure) { try { $context = $context[0](); } catch (\Throwable $e) { $context = [ 'error_on_context_generation' => $e->getMessage(), 'exception' => $e, ]; } if (!\is_array($context)) { $context = [$context]; } $record = $record->with(context: $context); } return $record; } }
Simpan