Logger teilweise ausschalten

3

3,14159265

Gast
Hallo zusammen,

wenn ich im Log Level fine logge bekomme ich unter anderem auch sämtliche Swing Logs mit in meine Output File geschrieben.
Ist es irgendwie möglich, ohne auf log4j umzusteigen, das auszuschalten, dass nur noch die Logs aus meiner Anwendung geloggt werden und nicht mehr die Swing Logs?

Dank und Gruß
 

musiKk

Top Contributor
Ich weiß jetzt nicht, wie die Logger von Swing heißen (und mir war bis eben auch unbekannt, dass da überhaupt geloggt wird...), aber wenn sie mit [c]javax.swing[/c] beginnen, sollte die Konfiguration [c]javax.swing.level=SEVERE[/c] oder so dafür sorgen, dass nur noch die schlimmsten Meldungen erscheinen.
 
3

3,14159265

Gast
Mmh, also ich versteh es nicht so ganz:

Hier mal ein einfaches Beispiel zu dem Logger - produziert das selbe Problem:
[JAVA=42]
public class LoggerConfig {

private LoggerConfig() {
}

public static void setup(String path, String name, Level level) {
try {
Logger logger = Logger.getLogger("");
logger.setLevel(level);

FileHandler fh = new FileHandler(path+name);
fh.setFormatter(new SimpleFormatter());

logger.addHandler(fh);

} catch (Exception e) {
e.printStackTrace();
}
}
}
[/code]

Hier die Klasse, wo geloggt werden soll:
[JAVA=42]
public class Test {
private final static Logger LOGGER = Logger.getLogger(Test.class.getName());
public static void main(String[] args) {
LoggerConfig.setup("C:\", "log.txt", Level.FINE);
LOGGER.log(Level.INFO,"Info log");

new Fenster();

LOGGER.log(Level.WARNING,"Warnung");
LOGGER.log(Level.INFO,"Info");
}
}
[/code]

Das [JAVA=42]new Fenster();[/code] ist ein einfaches JFrame. Wenn man es startet und dann nur kurz in die log.txt schaut, stehen die ganzen swingx logs mit drin.
Hatte schon versucht einen Filter drüber zu legen, allerdings hat das nicht so ganz geklappt..
Der "Fehler" wird ja auch erst ab den Level FINE produziert - ab INFO werden die Sachen nicht angezeigt..
Weiß einer wie ich das abschalten/umgehen kann?
 
3

3,14159265

Gast
Gelöst: Hatte einen Fehler im Filter..
Wenn man einen Filter an den Handler bastelt klappt es.

[JAVA=42]
fh.setFilter(new Filter() {
public boolean isLoggable(LogRecord record) {
return record.getLoggerName().startsWith("PACKAGENAME");
}
});
[/code]

In PACKAGENAME trägt man den Paketnamen ein, der geloggt werden soll..
 

nrg

Top Contributor
nenene,... ich hab zwar schon einige getrunken aber das bestätigt mir nur nochmal die nutzung von log4j....

edit: um das eben nochmal ein wenig detailierter auszudrücken. ich hab es auch mal mit std java probiert und hab das ziehmlich schnell gegen die wand gefahren. also für mich: loggen in java -> apache log4j
 
Zuletzt bearbeitet:

musiKk

Top Contributor
Naja, man hat erstens nicht immer die Wahl, gerade wenn verwendete Bibliotheken JUL verwenden und zweitens ist das doch wirklich sehr einfach über Konfiguration zu lösen:
Code:
test.level=FINEST
test.foo.level=WARNING
sorgt dafür, dass alles im Package [c]test[/c] geloggt wird mit Ausnahme von allem im Package [c]test.foo[/c], dort gehts erst ab WARNING los.
 
3

3,14159265

Gast
Zugegeben, ich kenne jetzt log4j nicht im Detail, aber ich fand den Code jetzt auch nicht gerade schwer zu erstellen. Man muss sich nur dafür etwas durch die API hangeln um zu erfahren, dass ab man sich ab FINE runter, im TRACE Level Bereich befindet und da wird dann alles Mögliche geloggt wird - was ich auch etwas komisch fand, da: Schaut man in die Klasse von JFrame rein, kein LOGGER vorhanden ist und die Ausgaben nur kommen, wenn man in eine Datei loggt - in der Konsole wird das nicht angezeigt..
 

nrg

Top Contributor
allein als ich 2 appender drangehängt habe (console und file) und plötzlich unerklärlich in der console doppelt geloggt wurde (oder glaub sogar 4fach, weiß nimmer genau), hat mich zur entscheidung gebraucht den logger vom java std an den nagel zu hängen ;). aber gut. wenn er bei dir das macht, was du willst, spricht ja nix dagegen
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
N Was sind Logger in Java? (bzgl. SonarLint) Allgemeine Java-Themen 3
ralfb1105 LogManager logger schreibt nicht in Catch() Zweig Allgemeine Java-Themen 2
I Alle logs von Logger bekommen Allgemeine Java-Themen 3
B Best Practice Start-Applikation mit Logger? Allgemeine Java-Themen 3
A Threads Log4J Logger wird "überschrieben" Allgemeine Java-Themen 3
S log4j, root logger logt nur FATAL? Allgemeine Java-Themen 9
B OOP java.util.logging.Logger: Wie kann ich mehre Klassen in ein Logfile schreiben lassen? Allgemeine Java-Themen 12
E Logger loggt nicht alle Level Allgemeine Java-Themen 2
S Java Logger Allgemeine Java-Themen 5
S Anonymer Logger - kann man irgendwie eine komplexere Config hinkriegen? Allgemeine Java-Themen 6
D Logger mit verschiedenen Ausgabezielen Allgemeine Java-Themen 2
J Logger gibt nicht alle Level aus Allgemeine Java-Themen 3
F Logger in mehrere Dateien mit log4J Allgemeine Java-Themen 4
Q Unterschied der Logger Allgemeine Java-Themen 9
G Java Logger Allgemeine Java-Themen 2
hdi Logger - wie am schlausten? Allgemeine Java-Themen 14
G Java Logger ohne Stack Trace ausgaben. Allgemeine Java-Themen 2
G eigener logger mittels classe (dynamische logfilename) log4j Allgemeine Java-Themen 15
H java.util.Logger Allgemeine Java-Themen 5
B HeapSort für Array of Strings funktioniert nur teilweise Allgemeine Java-Themen 3
H Jar-Datei öffnet nur teilweise Allgemeine Java-Themen 2
E AES Entschlüsselung teilweise fehlerhaft Allgemeine Java-Themen 5
E grundkurs-java.de: Applets funktionieren nur teilweise Allgemeine Java-Themen 3
T Gleiche Operation dauert teilweise sehr lange Allgemeine Java-Themen 12
A mit .equals Array befüllen schlägt teilweise fehl Allgemeine Java-Themen 3
Tobse Input/Output Datei Teilweise überschreiben Allgemeine Java-Themen 7
I Teilweise falsche Darstellung jap. Zeichen im JEditorPane mit RTFEditorKit aus RTF-Datei Allgemeine Java-Themen 5
Junktyz In Writer und Outputstream wird teilweise nicht geschrieben Allgemeine Java-Themen 3
L Buffered Image teilweise zeichnen Allgemeine Java-Themen 6
B Long.parseLong löst teilweise Exception aus. Allgemeine Java-Themen 2
S meine java laufschrift funzt auf meinem NB teilweise schrott Allgemeine Java-Themen 2
C Bei Javainstallation Cache ausschalten Allgemeine Java-Themen 13
P Codezeilen ausschalten Allgemeine Java-Themen 5
M Monitor ein/ausschalten mit Java Allgemeine Java-Themen 11
A Java-Program zum PC-ausschalten Allgemeine Java-Themen 10

Ähnliche Java Themen

Neue Themen


Oben