Как просмотреть сообщения журнала org.codehaus.jackson — с помощью logging.properties

Я пытаюсь десериализовать входящий запрос PUT с телом запроса JSON, используя пакет org.codehaus.jackson, и получаю сообщение об ошибке The request sent by the client was syntactically incorrect. Как я могу получить более подробные журналы/сообщения об ошибках в журналах моего сервера Pivotal TC, например. в catalina.log?

Я добавил следующую строку в logging.properties:

org.codehaus.level = FINEST

Но НЕТ сообщений от org.codehaus отображается в моем журнале, хотя сообщение об ошибке отображается на веб-странице. Может быть, codehaus не поддерживает ведение журнала Java, и мне следует настроить J4Log или другое подобное средство ведения журнала?

Моя версия Jackson — 1.9.13, я использую Pivotal tc server из Spring Tools Suite (3.8).


person TomR    schedule 14.08.2017    source источник
comment
log4j.logger.org.springframework.web=debug может помочь.   -  person Assafs    schedule 14.08.2017
comment
И в каком конфиге это писать? Я думаю, есть отдельный файл для log4j?   -  person TomR    schedule 14.08.2017
comment
Там должен быть. Я не знаком с вашей установкой.   -  person Assafs    schedule 14.08.2017
comment
@TomR, не могли бы вы поделиться своим logging.properties, чтобы лучше понять, как вы его настраиваете в настоящее время.   -  person Naman    schedule 18.08.2017


Ответы (2)


Из-за того, что вы говорите, кажется, что вы пытаетесь изменить logging.properties tomcat.

Обычно это плохая идея, поскольку вам может потребоваться разное ведение журнала для разных веб-приложений, загруженных на один и тот же сервер Tomcat.

Что вам нужно сделать, это настроить log4j в вашем проекте. Обычно проекты Java определяют папку «ресурс». Вы должны добавить туда файл с именем

log4j.properties

и добавить туда следующее:

log4j.rootLogger=ERROR,stdout
# Logger for jackson lib
log4j.logger.org.codehaus=TRACE

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%p\t%d{ISO8601}\t%r\t%c\t[%t]\t%m%n

Это извлекается из конфигурации log4j по умолчанию и регистрирует стандартный вывод, который для Tomcat перенаправляется в файл журнала catalina.out. Вы можете прочитать документацию по адресу https://docs.oracle.com/cd/E29578_01/webhelp/cas_webcrawler/src/cwcg_config_log4j_file.html с объяснением того, как перенаправить журнал в другой файл и как использовать скользящие добавления, чтобы сохранить некоторую историю

Надеюсь, это сработает!

person gmcontessa    schedule 17.08.2017

Запрос, отправленный клиентом, был синтаксически неправильным.

^^^ Это сообщение создается сервлетом HTTP, обрабатывающим клиентский запрос, а не сопоставителем jackson. Вы можете найти соответствующие сообщения журнала под именем регистратора spring-mvc: org.springframework.web

ХТН

person Steve Oh    schedule 22.08.2017