* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Monolog\Processor; /** * Adds a tags array into record * * @author Martijn Riemers */ class TagProcessor implements ProcessorInterface { /** @var string[] */ private $tags; /** * @param string[] $tags */ public function __construct(array $tags = []) { $this->setTags($tags); } /** * @param string[] $tags */ public function addTags(array $tags = []): self { $this->tags = array_merge($this->tags, $tags); return $this; } /** * @param string[] $tags */ public function setTags(array $tags = []): self { $this->tags = $tags; return $this; } /** * {@inheritDoc} */ public function __invoke(array $record): array { $record['extra']['tags'] = $this->tags; return $record; } }