class MessagePlaceholderProcessor in Monolog 8
Same name and namespace in other branches
- 2.x src/Logger/Processor/MessagePlaceholderProcessor.php \Drupal\monolog\Logger\Processor\MessagePlaceholderProcessor
Parse and replace message placeholders.
Hierarchy
- class \Drupal\monolog\Logger\Processor\MessagePlaceholderProcessor
Expanded class hierarchy of MessagePlaceholderProcessor
1 string reference to 'MessagePlaceholderProcessor'
1 service uses MessagePlaceholderProcessor
File
- src/
Logger/ Processor/ MessagePlaceholderProcessor.php, line 10
Namespace
Drupal\monolog\Logger\ProcessorView source
class MessagePlaceholderProcessor {
/**
* The message's placeholders parser.
*
* @var \Drupal\Core\Logger\LogMessageParserInterface
*/
protected $parser;
/**
* @param \Drupal\Core\Logger\LogMessageParserInterface $parser
* The parser to use when extracting message variables.
*/
public function __construct(LogMessageParserInterface $parser) {
$this->parser = $parser;
}
/**
* @param array $record
*
* @return array
*/
public function __invoke(array $record) {
// Populate the message placeholders and then replace them in the message.
$message_placeholders = $this->parser
->parseMessagePlaceholders($record['message'], $record['context']);
$record['message'] = empty($message_placeholders) ? $record['message'] : strtr($record['message'], $message_placeholders);
// Remove the replaced placeholders from the context to prevent logging the
// same information twice.
foreach (array_keys($message_placeholders) as $placeholder) {
unset($record['context'][$placeholder]);
}
return $record;
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
MessagePlaceholderProcessor:: |
protected | property | The message's placeholders parser. | |
MessagePlaceholderProcessor:: |
public | function | ||
MessagePlaceholderProcessor:: |
public | function |