FileMaster
Search
Toggle Dark Mode
Home
/
.
/
wp-content
/
plugins
/
ameliabooking
/
vendor
/
apimatic
/
core
/
src
/
Logger
Edit File: ConsoleLogger.php
<?php namespace Core\Logger; use Closure; use Core\Utils\CoreHelper; use Psr\Log\AbstractLogger; use Psr\Log\InvalidArgumentException; class ConsoleLogger extends AbstractLogger { /** * A callable function that takes in a format and any number of parameters to satisfy that format. * For example: "printf", will be called like printf('%s %s', 'a', 'b') * * @var callable */ private $printer; public function __construct(callable $printer) { $this->printer = $printer; } /** * @inheritDoc */ public function log($level, $message, array $context = []): void { if (!in_array($level, LoggerConstants::ALLOWED_LOG_LEVELS, true)) { throw new InvalidArgumentException( "Invalid LogLevel: $level. See Psr\Log\LogLevel.php for possible values of log levels." ); } Closure::fromCallable($this->printer)("%s: %s\n", $level, str_replace( array_map(function ($key) { return '{' . $key . '}'; }, array_keys($context)), array_map(function ($value) { return CoreHelper::serialize($value); }, $context), $message )); } }
Save
Back