Как стать автором
Обновить

Комментарии 6

А как с производительностью? Сравнивалось, насколько "Нормализованный логгер" медленнее "Старого плохого логгера"?

Ведь, наверняка, старый так был сделан не просто так...

Ещё не сравнивалось. Положу в ближайшие задачи.

Benchmark                                                      Mode  Cnt      Score     Error  Units
NormalizedFeignLoggerBenchmarkTest.testFeignWithoutLogger     thrpt   25  16281.625 ± 279.774  ops/s
NormalizedFeignLoggerBenchmarkTest.testNormalizedFeignLogger  thrpt   25   6081.675 ± 229.912  ops/s
NormalizedFeignLoggerBenchmarkTest.testSlf4jFeignLogger       thrpt   25  16593.059 ± 151.327  ops/s

А как реализовано собирание денормализованного вывода в общий кусок, если в двух словах? Я полагаю, что на запрос-ответ в оперативке создаётся объект с каким-нибудь List<String> с последующим joining('\n')?

Кстати, вопрос немного рядом с темой, но оффтопик: а чем какой-нибудь trace-id в MDC положить было не выход? По Ctrl+F замечательно ищется в текстовом файле. Но да, тут статья про сам факт нормализованного логгера, а не про поиск решения, как бы ответ и запрос в многороточности найти. :)

Код открыт - можете посмотреть на реализацию

в оперативке создаётся объект с каким-нибудь List<String> с последующим joining('\n')

Верно.

Такой вывод связан с тем, что у команды мониторинга есть определённые проблемы - они не могут в случае ошибок обращаться к другим логам (делать какой-либо поиск). Лог запроса и ответа должен быть в одной строке.

Обнаружил неприятную особенность feign-клиента - чтобы включить логирование, нужно внести правки в 3 (трёх) местах (несмотря на мануал https://www.baeldung.com/java-feign-logging):
1. Добавить опцию запуска приложения -Dfeign.client.config.myFeignClient.loggerLevel=FULL
2. Добавить опцию запуска приложения -Dlogging.level.{FQCN}=DEBUG
3. Добавить класс MyFeignConfig

Но 3-й пункт может быть не выполним, если нет доступа к исходникам/репозиторию...

Как быть?

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории