Разделять сообщения журнала Monolog при превышении максимальной длины строки

Я загружаю сообщения журнала, используя Монолог к Handler максимальная длина сообщения составляет 1024 символа.

Я ищу лучший способ перехватить мои сообщения журнала и, если их длина превышает 1024 символа, разделить их на два (или больше).

Я мог бы построить Formatter это просто сокращает сообщение до 1024 символов, но я хочу сохранить информацию.

Следующая мысль должна была использовать Processor но он просто получает соответствующую запись, и нет никакой возможности добавить другую запись.

Поэтому я думаю, что правильным способом было бы создать собственный обработчик, например MessageLengthLimitHandler, в котором я могу обернуть реальный обработчик получения моих сообщений в конце.

Я попытался посмотреть на другие обработчики, и, кажется, все, что мне нужно для реализации, это handle() функция, остальные могут быть унаследованы от AbstractHandler.
Тем не менее, я немного не уверен, что правильный способ разделить один $record на две части — какие-нибудь предложения?

Как только я разделю их, я могу просто передать их используя $this->handler->handle($record) для каждой записи (или путем передачи массива в handleBatch())

2

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]