Ich muss die javax.net.debug = all-Ausgabe speichern, die in einer Datei erstellt wird. Ich verwende log4j und habe versucht, einen Logging-Proxy wie im folgenden Beispiel zu erstellen. Es nimmt jedoch nicht die Informationen auf. Ich bin nicht sicher, wo der javax.net.debug gedruckt wird. Ich habe versucht, system.out und system.err auf diese Weise zu erfassen, aber keiner von beiden hat funktioniert. Danke für deine Hilfe.
%Vor%Vielleicht erstellt das Subsystem seine Kopie der Werte und Sie sind zu spät beim Umschalten. Versuchen Sie dies zuerst in Ihrem Hauptbuch.
BEARBEITEN
OK - ich habe Ihr Idiom komplett vermisst. Ich denke, du solltest diese innere Klasse nicht benutzen. Sie sollten eine PrintStream-Instanz in einem OutputStream definieren, der bei jedem "\ n" einen neuen Protokolleintrag erstellt. Die Art, wie Sie es jetzt tun, vermisst viele Möglichkeiten, Ihre Instanz zu "drucken".
%Vor%und dann
%Vor%Sie möchten vielleicht immer noch einen Verweis auf den vorherigen Stream einfügen - links als Übung: -)
Dies ist eine lange Geschichte, aber es ist möglich, dass das Überschreiben von print(String)
nicht ausreicht. Zum Beispiel gibt es auch print(Object)
usw., ganz zu schweigen von den verschiedenen Methoden append()
und format()
.