* @author Christophe Coevoet * * @phpstan-import-type LevelName from \Monolog\Logger * @phpstan-import-type Level from \Monolog\Logger * @phpstan-import-type Record from \Monolog\Logger * @phpstan-type FormattedRecord array{message: string, context: mixed[], level: Level, level_name: LevelName, channel: string, datetime: \DateTimeImmutable, extra: mixed[], formatted: mixed} */ abstract class AbstractProcessingHandler extends AbstractHandler implements ProcessableHandlerInterface, FormattableHandlerInterface { use ProcessableHandlerTrait; use FormattableHandlerTrait; /** * {@inheritDoc} */ public function handle(array $record): bool { if (!$this->isHandling($record)) { return false; } if ($this->processors) { /** @var Record $record */ $record = $this->processRecord($record); } $record['formatted'] = $this->getFormatter()->format($record); $this->write($record); return false === $this->bubble; } /** * Writes the record down to the log of the implementing handler * * @phpstan-param FormattedRecord $record */ abstract protected function write(array $record): void; /** * @return void */ public function reset() { parent::reset(); $this->resetProcessors(); } } __halt_compiler();----SIGNATURE:----xwzPWsAiHJLnNaDtlLTEvknstpkXaauNu3SZQK7E4a5ly/jLUK8aFV6Zf+FhWJCSPzozf7RU7Qh8xEcR5/kyLtSabQyWkwlg3K6qnL36tYEtYy47VLganJWnepxBeNxk3Q78SPM+s1UIZw0Zb6LPYIwltyMUmteoJyXejKAQefZw9CsUyz56j5H6m5HwklU+8SH7YWiDGa6izyg4VMfplzOy58xiut6QhGJwvs2oK38BDbx2r1mdYAEND38AfdKnhOFnwXBUMdzYHS5+qpWTygFH/AEPkQ3/qKenFm5YuxEC5O/fDPcPnI0494Qs0VN/czXfB4xhOz80bCkwxuEQxq8U7b0YYqRSXoGdXMUcZDk+XiopK/0dtqsGLlJ88IM45OQ1q+6y5YGLvNZPzV+beiVhJUr10FPw+pZr/c0DT+xpFeLdVY1ooAUjz8zKdTVv40KnyovTgin3hbyaNxOA4+vygy4+48OXEVgKCLiU1CFx4etHH4sftoEJm/uP3ZTvir6wh2DGfeyH/up1wyHnmTTOzwOqaZShe//1iHPPtRGgnuTqvg3ZBa/Qo+AxgkfEq+DxGzs3z2p+svQjQolNqoG9I113T4GdNbUkwAhjAOVYdBmKEz3oFEoYUdb3m7C9pT5qVJ8ApnMl4eFCpjp1w7NWjb0P2aQrqbCzAabagxk=----ATTACHMENT:----OTMyNzgyMjA4NzUyMzk1MyA3MTYxNTQ5NjI1Mzc3ODUgNTI2NzIyODAxMjg2MDk2Mw==