Aktivieren Sie die Debug-Protokollierung für Log4J2 + Apache HttpClient

8

Ich versuche, die Debugging-Protokollierung für meinen Apache HttpClient zu aktivieren, kann aber nicht funktionieren (bekomme überhaupt keine Logging-Ausgabe, was mit HttpClient zusammenhängt).

Dies ist meine log4j2-Konfiguration, die ich gerade benutze:

%Vor%

Das Ändern der Stufe von warnen zu debuggen für den Ruhezustand funktioniert zum Beispiel perfekt.

Diese Bibliotheken verwenden:

%Vor%

Log4J2

%Vor%

Hat jemand eine Idee? Ich habe bereits verschiedene Paketnamen wie

ausprobiert %Vor%

und einige mehr, aber nichts scheint zu funktionieren ...

    
StephanM 04.02.2014, 13:39
quelle

2 Antworten

8

Ich gehe davon aus, dass httpcomponents log4j-1.2 intern verwendet. Log4j2 stellt einen Adapter zur Verfügung, der Aufrufe von Ihrer Anwendung, die die 1.2-API verwenden, an die neue 2.0-Implementierung weiterleitet.

Um dies zu aktivieren, müssen Sie nur log4j-core- und log4j-1.2-api-Jars zu Ihrem Klassenpfad hinzufügen. (Ihre aktuellen Maven-Abhängigkeiten haben nur log4j-api, das ist die neue 2.0 API.) Siehe auch Ссылка .

    
Remko Popma 05.02.2014, 02:27
quelle
2

Remko hat Recht, dass das Problem httpcomponents mit log4j-1.2 intern ist. Der Adapter, der log4j 1.2 zu log4j 2 routet, wird als log4j 1.2-Bridge bezeichnet und wird hier beschrieben: Ссылка .

Die maven-Artefaktseite für log4j erklärt genau, wie Sie Ihre maven-Abhängigkeiten so konfigurieren, dass sie die Bridge-Bibliothek enthalten:

  

Log4j 1.x API-Bridge

     

Wenn vorhandene Komponenten Log4j 1.x verwenden und Sie diese Protokollierung haben möchten   geroutet zu Log4j 2, dann alle Log4j 1.x Abhängigkeiten entfernen und die   folgend.

%Vor%

Von Ссылка

    
sew 21.01.2016 02:49
quelle