Hi,
ich habe ein Problem in meinem Projekt beim Testen.
Ich verwende Log4j2 als Logger. Mein Projekt besteht aus vielen kleinen Modulen, von denen die meisten komplett selbstständig lauffähig sind. Packe ich jetzt in jedes meiner Module in den resources-Ordner eine log4j2.xml, dann loggt das Modul beim Testen sauber da hin, wo ich es gerne hätte.
Wenn ich jetzt aber ein Modul kompilieren, welches mehrere dieser Einzelmodule enthält, dann wird scheinbar irgendeine dieser log4j2.xml genommen und als DIE log4j2.xml verwendet.
D.h. das logging ist mehr oder minder zwar da, aber ich unterscheide z.B. für die Untermodule den Dateinamen in den geloggt werden soll und dann gibt es keine Aufspaltung und der Dateiname ist irgendeiner.
Beholfen habe ich mir jetzt damit, dass ich in keinem meiner Module eine log4j2.xml habe, sondern nur in dem "Hauptmodul" welches die anderen verwendet. Da habe ich dann mehrere File-Appender eingetragen und das System funktioniert. Aber beim testen der Einzelmodule bekomme ich jetzt kein Logging mehr und muss eigentlich alles, was ich schnell in der Konsole checken möchte mit System.out testen, was ich dann hinterher wieder entfernen muss, weil es eigentlich nicht schön ist.
Gibt es hier irgendeine Möglichkeit, dass das logging in beiden Fällen funktioniert? Am besten sogar mit einer log4j2-Konfiguration in jedem einzelnen Projekt, weil ich dann Konfigurationen viel einfache nachpflegen kann und muss nicht immer erst noch das Modul suchen in welchem die log4j2.xml liegt.
ich habe ein Problem in meinem Projekt beim Testen.
Ich verwende Log4j2 als Logger. Mein Projekt besteht aus vielen kleinen Modulen, von denen die meisten komplett selbstständig lauffähig sind. Packe ich jetzt in jedes meiner Module in den resources-Ordner eine log4j2.xml, dann loggt das Modul beim Testen sauber da hin, wo ich es gerne hätte.
Wenn ich jetzt aber ein Modul kompilieren, welches mehrere dieser Einzelmodule enthält, dann wird scheinbar irgendeine dieser log4j2.xml genommen und als DIE log4j2.xml verwendet.
D.h. das logging ist mehr oder minder zwar da, aber ich unterscheide z.B. für die Untermodule den Dateinamen in den geloggt werden soll und dann gibt es keine Aufspaltung und der Dateiname ist irgendeiner.
Beholfen habe ich mir jetzt damit, dass ich in keinem meiner Module eine log4j2.xml habe, sondern nur in dem "Hauptmodul" welches die anderen verwendet. Da habe ich dann mehrere File-Appender eingetragen und das System funktioniert. Aber beim testen der Einzelmodule bekomme ich jetzt kein Logging mehr und muss eigentlich alles, was ich schnell in der Konsole checken möchte mit System.out testen, was ich dann hinterher wieder entfernen muss, weil es eigentlich nicht schön ist.
Gibt es hier irgendeine Möglichkeit, dass das logging in beiden Fällen funktioniert? Am besten sogar mit einer log4j2-Konfiguration in jedem einzelnen Projekt, weil ich dann Konfigurationen viel einfache nachpflegen kann und muss nicht immer erst noch das Modul suchen in welchem die log4j2.xml liegt.