Ich verwende commons-httpclient 3.1 in einer Integrationstestsuite. Die Standardprotokollierung für HttpClient ist extrem laut und ich kann sie anscheinend nicht deaktivieren. Ich habe versucht, den Anweisungen hier zu folgen , aber keine davon macht einen Unterschied.
Meistens muss ich nur den org.apache.http.wire-Logger zum Schweigen bringen. Ein Teil des Problems ist, dass ich nicht weiß, welche Art von Logger HttpClient zu verwenden versucht, und das meiste Problem ist, dass ich diese Bibliothek noch nie zuvor verwendet habe. Ich habe versucht, eine log4j.properties-Datei zu erstellen und in meinem Ordner test / resources abzulegen, die Master-Datei logging.properties in jre / lib zu ändern und die verschiedenen Protokollierungsoptionen wie auf der Protokollierungsseite angegeben an Maven zu senden , und keine davon einen Unterschied machen.
Jede Hilfe wird geschätzt ... das macht mich verrückt.
UPDATE: Eine Korrektur: Es scheint, dass die fragliche Ausgabe tatsächlich durch die Verwendung von HttpClient durch jwebunit stammt, nicht durch meine eigene. In jedem Fall ist es nicht wünschenswert.
UPDATE: Danke für die bisherigen Versuche. Ich habe alles versucht, was unten vorgeschlagen wurde, aber immer noch kein Glück. Ich habe eine Datei commons-logging.properties in meinem Ordner src / test / resources mit dem folgenden Inhalt
org.apache.commons.logging.LogFactory=org.apache.commons.logging.impl.Log4jFactory
log4j.configuration=log4j.properties
und eine Datei log4j.properties im selben Ordner mit dem folgenden Inhalt
log4j.rootLogger=ERROR, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%c] %m%n
#This is the line that should make httpclient shut up
log4j.logger.org.apache.http=ERROR
Wenn ich jedoch meine Tests durchführe, erhalte ich immer noch eine Reihe solcher Ausgaben:
21:57:41.413 [main] DEBUG org.apache.http.wire - << " [\r][\n]"
21:57:41.413 [main] DEBUG org.apache.http.wire - << "[\r][\n]"
21:57:41.413 [main] DEBUG org.apache.http.wire - << " [\r][\n]"
21:57:41.413 [main] DEBUG org.apache.http.wire - << " </ul>[\n]"
21:57:41.413 [main] DEBUG org.apache.http.wire - << " [\n]"
21:57:41.424 [main] DEBUG org.apache.http.wire - << "[\n]"
21:57:41.425 [main] DEBUG org.apache.http.wire - << "[\r][\n]"
21:57:41.425 [main] DEBUG org.apache.http.wire - << "[\r][\n]"
21:57:41.425 [main] DEBUG org.apache.http.wire - << " </div>[\r][\n]"
21:57:41.425 [main] DEBUG org.apache.http.wire - << " </li>[\r][\n]"
21:57:41.425 [main] DEBUG org.apache.http.wire - << " [\r][\n]"
21:57:41.425 [main] DEBUG org.apache.http.wire - << " [\r][\n]"
21:57:41.433 [main] DEBUG org.apache.http.wire - << " </ul>[\n]"
21:57:41.433 [main] DEBUG org.apache.http.wire - << "</div>[\n]"
21:57:41.433 [main] DEBUG org.apache.http.wire - << "[\n]"
21:57:41.433 [main] DEBUG org.apache.http.wire - << "</div>[\n]"
21:57:41.433 [main] DEBUG org.apache.http.wire - << "[\n]"
21:57:41.433 [main] DEBUG org.apache.http.wire - << "[\n]"
21:57:41.433 [main] DEBUG org.apache.http.wire - << "[\n]"
21:57:41.433 [main] DEBUG org.apache.http.wire - << "[\n]"
21:57:41.433 [main] DEBUG org.apache.http.wire - << "<div class="details">[\n]"
21:57:41.442 [main] DEBUG org.apache.http.wire - << "[\n]"
21:57:41.443 [main] DEBUG org.apache.http.wire - << "[\n]"
21:57:41.443 [main] DEBUG org.apache.http.wire - << "<div class="details-body details-precis ">[\n]
"
21:57:41.443 [main] DEBUG org.apache.http.wire - << "<div class="details-state">[\n]"
21:57:41.443 [main] DEBUG org.apache.http.wire - << "[\n]"
21:57:41.443 [main] DEBUG org.apache.http.wire - << "</div>[\n]"
21:57:41.443 [main] DEBUG org.apache.http.wire - << "</div>[\n]"
21:57:41.443 [main] DEBUG org.apache.http.wire - << "[\n]"
21:57:41.455 [main] DEBUG org.apache.http.wire - << "[\n]"
21:57:41.455 [main] DEBUG org.apache.http.wire - << "</div>[\n]"
21:57:41.455 [main] DEBUG org.apache.http.wire - << "[\n]"
21:57:41.455 [main] DEBUG org.apache.http.wire - << "</div>[\n]"
21:57:41.455 [main] DEBUG org.apache.http.wire - << "</div>[\n]"
21:57:41.455 [main] DEBUG org.apache.http.wire - << "[\n]"
21:57:41.455 [main] DEBUG org.apache.http.wire - << "[\n]"
21:57:41.455 [main] DEBUG org.apache.http.wire - << "[\n]"
21:57:41.455 [main] DEBUG org.apache.http.wire - << "[\r][\n]"
Destroying 1 processes21:57:41.465 [main] DEBUG org.apache.http.wire - << "[\r][\n]"
Diese Ausgabe für alles, was über den Draht kommt, macht diese Bibliothek für mich unbrauchbar ... bis ich herausfinden kann, wie ich sie ausschalten kann. Muss ich etwas Besonderes tun, damit diese Protokollkonfiguration eingelesen wird?
public class Main { static { System.setProperty("org.apache.commons.logging.Log", "org.apache.commons.logging.impl.NoOpLog"); } // Rest of class as before }
-Dlog4j.debug
Ihre VM-Optionen erweitern, um sicherzustellen, dass die richtige Konfigurationsdatei geladen wird