хорошо.
2. В некоторых местах мне нужно писать более полный ответ.
3. Этот ответ я пока формирую в отдельной функции, в которой он скармливается инфо, дебагам и другим принтам.
Проблема:
Из-за того, что функция отдельная, то и рантайм с lineNumber указывает не на место ее вызова, а на место вызова log.debug в ней.
Как мне в таком месте переписать форматтер чтобы строка указывалась верно?
Можно в ней вызывать рантайм. Тогда всё ок. Но его некуда впихнуть из-за уже определенного при старте форматтера.
Есть мысль сделать отдельный инстанс логгера со своим форматтером. Но может есть вариант получше - как-нибудь через хуки переопределить или еще чего. Не знаю
В общем, самый простая схема получилась такая: https://play.golang.org/p/mXbjRCImllu Но, как мне кажется, кривовато всё равно. И какая цена у такого нонстопового переопределения форматтера?
Обсуждают сегодня