Używam log4j do rejestrowania informacji. Użyłem pliku log4j.xml
do tworzenia plików dziennika. Podałem bezwzględną ścieżkę dla każdego pliku dziennika jako wartość znacznika param
.Jak nadać dynamiczną nazwę pliku w aplikatorze w log4j.xml
Np .:
<appender name="FA" class="org.apache.log4j.DailyRollingFileAppender">
<param name="DatePattern" value="'_'yyyyMMdd"/>
<param name="File" value="D:/logFiles/GPreprocessor.log"/>
<layout class="com.dnb.genericpreprocessor.common.log.AppXMLLayout"/>
</appender>
Nie chcę pisać "GPreprocessor.log" bezpośrednio. W rzeczywistości nazwa tego pliku jest dynamiczna, na podstawie nazwy mojego projektu. Na przykład, jeśli uruchomię program ABC.java, logowanie powinno się odbyć pod numerem D:/logFiles/ABC.log
, ale jeśli uruchomię XYZ.java, rejestrowanie powinno się odbyć pod numerem D:/logFiles/XYZ.log
. Lokalizacja pliku zawsze pozostanie taka sama: D:/logFiles/
. Jak mogę dynamicznie zmieniać nazwę pliku logu?
będzie wspierać/wziąć jeśli dam wartości w.plik właściwości? tj. zamiast definiować wartość na początku JVM, czy mogę zdefiniować ją w pliku .properties? – SuRa
jeśli używasz System.setProperty ("nazwa pliku logu", "a_cool_logname"); upewnij się, że ustawiłeś to zanim coś zarejestrujesz – James