Как вывести сгенерированный запрос и ответ из Groovy RestClient?

#rest #groovy #rest-client

#rest #groovy #rest-клиент

Вопрос:

в настоящее время я использую RestClient и, похоже, не могу понять, как выводить XML-запрос и XML-ответ для отладки и информационных целей…

Я попробовал решение, упомянутое здесь: http://agileice.blogspot.com/2009/09/pretty-printing-xml-results-returned.html

Но это не работает, есть другие предложения?

Ответ №1:

Принятый ответ (включить проводное ведение журнала с помощью log4j) в основном правильный, но у меня возникли проблемы с включением проводного ведения журнала для HTTP builder в моем скрипте Groovy. По какой-то причине удаление log4j.xml файл в моем каталоге $GROOVY_HOME/conf не работает. В конечном счете, мне пришлось просто добавить соответствующие параметры ведения журнала в команду groovy, когда я ее запускал.

 groovy 
    -Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog 
    -Dorg.apache.commons.logging.simplelog.showdatetime=true 
    -Dorg.apache.commons.logging.simplelog.log.org.apache.http=DEBUG 
    myscript.groovy
  

Ответ №2:

Поскольку это зависит от HttpClient, вы можете попробовать включить ведение журнала заголовка и проводного журнала для вашего скрипта.

http://blog.techstacks.com/2009/12/configuring-wire-logging-in-groovy-httpbuilder.html

http://hc.apache.org/httpcomponents-client-ga/logging.html

Ответ №3:

Если вы используете spring-boot , вы можете установить logging.level в своем файле свойств приложения и использовать slf4j серверную часть.

 <dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>jcl-over-slf4j</artifactId>
    <version>${slf4j.version}</version>
</dependency>

<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
    <version>${logback.version}</version>
</dependency>