Ganon
2010-06-22, 15:52:56
Heyho.
Wenn man log4j (oder slf4j mit log4j Provider) nutzt und einen Text an den Logger schickt, kann man sich ja sogar die Code-Zeile ausgeben lassen, an der das Problem bzw. der Log-Eintrag aufgetreten ist.
z.B.
15:43:12,475 - INFO - MainControl:217 - Hallo Welt
Der Aufruf ist recht simpel (hier slf4j):
LoggerFactory.getLogger(MainControl.class).info("Hallo Welt");
Die Frage ist jetzt nur, woher er diese Zeile weiß? Ich würde nämlich gerne 3rd-Party-Abhängigkeiten aus meinem Code größtenteils raushalten und eine Klasse schreiben die das Logging 1:1 an slf4j weiterleitet. Mein Versuch mit:
public static void log(Class<?> cl, String msg) {
LoggerFactory.getLogger(cl).info(msg);
};
Resultiert aber dann in:
15:43:12,475 - INFO - MainControl:16 - Hallo Welt
Weiß da zufällig jemand etwas darüber, bevor ich den Code von denen durchacker? :D
Danke :)
Wenn man log4j (oder slf4j mit log4j Provider) nutzt und einen Text an den Logger schickt, kann man sich ja sogar die Code-Zeile ausgeben lassen, an der das Problem bzw. der Log-Eintrag aufgetreten ist.
z.B.
15:43:12,475 - INFO - MainControl:217 - Hallo Welt
Der Aufruf ist recht simpel (hier slf4j):
LoggerFactory.getLogger(MainControl.class).info("Hallo Welt");
Die Frage ist jetzt nur, woher er diese Zeile weiß? Ich würde nämlich gerne 3rd-Party-Abhängigkeiten aus meinem Code größtenteils raushalten und eine Klasse schreiben die das Logging 1:1 an slf4j weiterleitet. Mein Versuch mit:
public static void log(Class<?> cl, String msg) {
LoggerFactory.getLogger(cl).info(msg);
};
Resultiert aber dann in:
15:43:12,475 - INFO - MainControl:16 - Hallo Welt
Weiß da zufällig jemand etwas darüber, bevor ich den Code von denen durchacker? :D
Danke :)