2011-11-16 20 views
7

Obecnie używam języka Java util do rejestrowania dzienników w pliku, który można skonfigurować z poziomu java.util.logging.FileHandler.pattern. Chcę dodać znacznik czasu w nazwie pliku dziennika. Muszę również pobrać ścieżkę pliku dziennika z właściwości java.util.logging.FileHandler.pattern.Dołączanie obiektu TimeStamp do pliku dziennika narzędzia Java logger

+0

Mam nadzieję, że używasz slf4j jako elewacji do pozyskiwania drewna? –

+0

Użyj log4j :) i kilka dodatkowych znaków, aby spełnić minimum. –

Odpowiedz

1
public static String currentTimestamp() { 
    Calendar c = Calendar.getInstance(TimeZone.getTimeZone("UTC")); 
    DateFormat f = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM); 
    return f.format(c.getTime()); 
} 

to daje z powrotem znacznik czasu

-2

przyjrzeć się tej post wyjaśnić rejestrowanie w szczegółach.

Możesz użyć %t na czas w pliku konfiguracyjnym.

+1

Link już nie istnieje. java.util.logging.FileHandler nie obsługuje% t –

+0

To jest nawet katalog tymczasowy teraz (/ tmp) – Thomas

+0

https://docs.oracle.com/javase/7/docs/api/java/util/logging/FileHandler. html mówi: "% t" systemowy katalog tymczasowy –

5

może tym przykładzie pomaga.

String timeStamp = new SimpleDateFormat().format(new Date()); 
FileHandler fh = new FileHandler("./jay_log_%u.%g_" +timeStamp +".log", 30000,4); 
logger.addHandler(fh); 
Powiązane problemy