2009-07-29 23 views
9

Mam prostą aplikację internetową działającą na Tomcat 5.5 z log4j do logowania. Od czasu do czasu muszę spychać logowanie do DEBUGA, ale przez większość czasu jestem zadowolony z INFO.Jak dostosować poziomy log4j w czasie wykonywania?

Mogę zmienić mój config xml i zrestartować aplikację, ale wolałbym zmieniać poziomy logów w locie. Czy istnieje standardowa technika?

+0

rozważyć wystawienie rejestratora przez JMX? –

Odpowiedz

5

Wystarczy użyć programowy API:

logger.setLevel(Level.DEBUG) 

w programie, kiedy trzeba bardziej gadatliwe wyjście rejestrowania i

logger.setLevel(Level.INFO) 

aby uczynić go mniej ponownie gadatliwy.

+0

Jeśli korzystasz z weblogic, mają one wbudowaną stronę JSP, która umożliwia dostosowanie wszystkich uruchomionych rejestratorów za pomocą tego interfejsu API. –

5

Stworzyłem nowy moduł aplikacji Java (jar), aby zrobić to w interfejsie internetowym w czasie wykonywania, a także mieć stronę, aby wyświetlić wynik dziennika. Słoicznik jest bardzo prosty: należy go umieścić w folderze /WEB-INF/lib i dodać odwzorowanie do serwletu w pliku /WEB-INF/web.xml.

Strona projektu: http://www.log4jwebtracker.com

Powiązane problemy