Как вывести сгенерированный запрос и ответ из Groovy RestClient? - PullRequest
8 голосов
/ 22 октября 2011

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

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

Но что не работает, какие-либо другие предложения?

Ответы [ 3 ]

10 голосов
/ 18 ноября 2015

Принятый ответ (включите ведение журнала проводов с помощью log4j) в основном правильный, но у меня было немало проблем с включением ведения журнала проводов для HTTP-компоновщика в моем скрипте 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
3 голосов
/ 29 октября 2011

Так как это зависит от HTTPClient, вы можете попробовать включить заголовок и регистрацию проводов для вашего скрипта.

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

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

0 голосов
/ 22 января 2019

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

<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>
...