2016-03-21 3 views
0

Ich möchte Ausgabe in der Konsole die Anfrage von httpComponent aus Apache gesendet. Ich habe mehrere Konfigurationen in meiner log4j2.xml ausprobiert, aber ich habe nie etwas in Verbindung mit http in der Konsole bekommen. Ich sehe nur meine Log-App.Kann nicht Protokoll mit Apache httpComponent und log4j2 ausgeben

Hier meine log4j2.xml Datei

<?xml version="1.0" encoding="UTF-8"?> 
<Configuration status="WARN"> 
    <Appenders> 
     <Console name="Console" target="SYSTEM_OUT"> 
      <!--PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/--> 
      <PatternLayout pattern="* %msg%n"/> 
     </Console> 
    </Appenders> 
    <Loggers> 
     <Root level="debug"> 
      <AppenderRef ref="Console"/> 
     </Root> 

     <logger name="org.apache.http" level="debug"/> 
     <logger name="org.apache.wire" level="debug"/> 
    </Loggers> 
</Configuration> 

Hier meine kleinen Code

public ApiResponse<DealDiscovery> execute() throws IOException { 
     HttpClient client = HttpClientBuilder.create().build(); 
     URI uri = null; 
     try { 
      uri = new URIBuilder(BASE_URL).addParameter(TOKEN, token).build(); 
     } catch (URISyntaxException e) { 
      //Should never happened 
     } 
     HttpGet http = new HttpGet(uri); 
     HttpResponse httpResponse = client.execute(http); 
     String response = EntityUtils.toString(httpResponse.getEntity()); 
     return parseResponse(response); 
    } 

Hier meine Abhängigkeiten in der pom.xml

<dependency> 
     <groupId>com.saucelabs</groupId> 
     <artifactId>sauce_junit</artifactId> 
     <version>2.1.20</version> 
    </dependency> 

    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
     <version>4.12</version> 
     <scope>test</scope> 
    </dependency> 

    <dependency> 
     <groupId>org.seleniumhq.selenium</groupId> 
     <artifactId>selenium-java</artifactId> 
     <version>${selenium.version}</version> 
    </dependency> 

    <dependency> 
     <groupId>com.google.code.gson</groupId> 
     <artifactId>gson</artifactId> 
     <version>2.6.2</version> 
    </dependency> 

    <dependency> 
     <groupId>org.skyscreamer</groupId> 
     <artifactId>jsonassert</artifactId> 
     <version>1.2.3</version> 
     <scope>test</scope> 
    </dependency> 

    <dependency> 
     <groupId>org.hamcrest</groupId> 
     <artifactId>hamcrest-junit</artifactId> 
     <version>2.0.0.0</version> 
     <scope>test</scope> 
    </dependency> 
    <dependency> 
     <groupId>com.google.guava</groupId> 
     <artifactId>guava</artifactId> 
     <version>19.0</version> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.logging.log4j</groupId> 
     <artifactId>log4j-api</artifactId> 
     <version>2.5</version> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.logging.log4j</groupId> 
     <artifactId>log4j-core</artifactId> 
     <version>2.5</version> 
    </dependency> 

    <dependency> 
     <groupId>org.jsoup</groupId> 
     <artifactId>jsoup</artifactId> 
     <version>1.8.3</version> 
    </dependency> 

    <dependency> 
     <groupId>org.apache.poi</groupId> 
     <artifactId>poi</artifactId> 
     <version>3.13</version> 
    </dependency> 

    <dependency> 
     <groupId>org.apache.poi</groupId> 
     <artifactId>poi-ooxml</artifactId> 
     <version>3.13</version> 
    </dependency> 

    <dependency> 
     <groupId>org.apache.httpcomponents</groupId> 
     <artifactId>httpclient</artifactId> 
     <version>4.5.2</version> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.httpcomponents</groupId> 
     <artifactId>httpcore</artifactId> 
     <version>4.4.4</version> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.httpcomponents</groupId> 
     <artifactId>httpclient-cache</artifactId> 
     <version>4.5.2</version> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.httpcomponents</groupId> 
     <artifactId>httpmime</artifactId> 
     <version>4.5.2</version> 
    </dependency> 

</dependencies> 

Ich bin etwas vermissen?

Antwort

4

Die Antwort von hier kopiert: Enable debug logging for Log4J2 + Apache HttpClient Sie benötigen die folgende Abhängigkeit in pom.xml

<dependencies> 
    <dependency> 
    <groupId>org.apache.logging.log4j</groupId> 
    <artifactId>log4j-1.2-api</artifactId> 
    <version>2.5</version> 
    </dependency> 
</dependencies> 

Der Grund dafür Httpclient nutzt alte log4j 1.2 api hinzuzufügen: https://logging.apache.org/log4j/2.x/maven-artifacts.html

+0

Viele thx. Ich weiß nicht warum, aber ich habe diesen Beitrag verpasst. Ihre Lösung funktioniert gut. – tetienne

Verwandte Themen