2013-10-24 13 views

Odpowiedz

0

Zgodnie z LOG4J2-282 można to zrobić za pomocą konfiguracji (log4j2.xml).

Wygląda na to, że również (ponownie) zaimplementowano właściwość systemową w log4j-2.0b8, chociaż niektóre komentarze dotyczące tego wydania JIRA wskazują, że nadal może nie działać poprawnie.

0

Miałem frustrującą ilość trudności z uruchomieniem Log4J2 i drukowanie StatusLoggera nie jest wyjątkiem. Teoretycznie możesz ustawić go w pliku konfiguracyjnym za pomocą pola status, ale nie udało mi się w ten sposób wykonać tej pracy.

można uruchomić następujące na początku głównej metody Jednakże:

StatusConsoleListener listener = new StatusConsoleListener(Level.ALL); 
StatusLogger.getLogger().registerListener(listener); 
LogManager.getLogger(LogManager.ROOT_LOGGER_NAME); // initialize logger 

Note swoją klasę main() nie może mieć żadnych statycznych drewna, albo oni zostać zainicjowany zanim to się nazywa, co oznacza stan ładowania wiadomości nie będą drukowane.

5

Aktualizacja stycznia 2018:

Od Log4j 2.10, to jest proste: wystarczy uruchomić program z własności systemu log4j2.debug (bez potrzebnej wartości, pusty łańcuch jest w porządku).


Bieżąca (log4j-2.1) dokumentacja w rejestrze stanu jest nieco myląca. Zasadniczo:

  • Do występuje konfiguracja, status poziom Rejestrator może być sterowany z własności systemu org.apache.logging.log4j.simplelog.StatusLogger.level.
  • Po znalezieniu konfiguracji, poziom rejestratora statusu można kontrolować w pliku konfiguracyjnym za pomocą atrybutu "status", na przykład: <Configuration status="trace">.

AKTUALIZACJA: wersja documentation została ulepszona w log4j-2.2.

1

To może być mylące, najbliższym odpowiednikiem Log4J 1.x argument wiersza poleceń -Dlog4j.debug jest -Dorg.apache.logging.log4j.simplelog.StatusLogger.level=trace, który ustawia poziom Log4J 2.x "status logger" do śledzenia i dostarcza szczegółowe dane wyjściowe o konfiguracji logowania.

Log4J 1.x pozwala ręcznie określić lokalizację pliku konfiguracyjnego w wierszu poleceń, używając -Dlog4j.configuration=file:///var/lib/tomcat7/log4j.xml, gdzie plik konfiguracyjny znajduje się pod numerem /var/lib/tomcat7/log4j.xml. W Log4J 2.x występuje subtelna różnica w argumencie -Dlog4j.configurationFile=file:///var/lib/tomcat7/log4j.xml, "konfiguracja Plik" zamiast "konfiguracja".

Oczywiście należy upewnić się, że plik konfiguracyjny jest odpowiedni dla używanej wersji Log4J, struktura XML różni się między 1.x a 2.x.