Как регистрировать HTTP-запросы, отправленные ODataQueryBuilder API / VDM API? - PullRequest
1 голос
/ 01 апреля 2020

Использование последней версии Java SAP Cloud SDK

У нас есть код, который также использует ODataQueryBuilder API и VDM API. Мы хотим регистрировать HTTP-запросы, которые отправляются этими API. Мы хотим записать весь HTTP-запрос - заголовки, тело всего. Обратите внимание, что наше приложение работает на базе облачной платформы SAP Cloud Foun dry PAAS и использует cf set-logging-level doesn't, похоже, работает.

Ответы [ 2 ]

1 голос
/ 07 апреля 2020

Для приложений, развернутых на SCP CF, существуют различные настройки, для которых рекомендуются другие методы ведения журнала. Цель состоит в том, чтобы настроить отдельные уровни журнала для определенных c пакетов вашего приложения и сторонних зависимостей, например, SAP Cloud SDK или SAP Service SDK или Apache Компоненты HTTP .

Приложение на основе TomEE :

  • Измените manifest.yml, включив в него следующую запись env для переменной среды:
    SET_LOGGING_LEVEL: '{ROOT: INFO, com.sap.cloud.sdk: INFO, org.apache.http.wire: DEBUG}'
    
    Не стесняйтесь настраивать.

Spring Boot * Приложение на основе :

  • Мы ожидаем рамки обратного входа.
  • Редактировать / Создать файл: application/src/main/resources/logback-spring.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <configuration>
        <springProfile name="!cloud">
            <include resource="org/springframework/boot/logging/logback/base.xml"/>
            <root level="INFO"/>
            <logger name="org.springframework.web" level="INFO"/>
        </springProfile>
    
        <springProfile name="cloud">
            <appender name="STDOUT-JSON" class="ch.qos.logback.core.ConsoleAppender">
                <encoder class="com.sap.hcp.cf.logback.encoder.JsonEncoder"/>
            </appender>
            <logger name="org.springframework.web" level="INFO"/>
            <logger name="com.sap.cloud.sdk" level="INFO"/>
            <logger name="org.apache.http.wire" level="DEBUG"/>
            <root level="INFO">
                <appender-ref ref="STDOUT-JSON"/>
            </root>
        </springProfile>
    </configuration>
    

    Не стесняйтесь настраивать.

  • Обратите внимание на различные настройки профиля. Убедитесь, что профиль cloud активен для развернутых приложений. Отредактируйте manifest.yml, добавив следующую запись env для переменной среды:
    SPRING_PROFILES_ACTIVE: 'cloud'
    
1 голос
/ 01 апреля 2020

Я использовал этот аргумент Java при отладке своих запросов, но я делал это локально.

-Dorg.slf4j.simpleLogger.log.org.apache.http.wire=debug

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...