2011-11-16 11 views
7

Attualmente sto usando l'util Java per registrare i log nel file che può essere configurato da java.util.logging.FileHandler.pattern. Voglio aggiungere un timestamp nel nome del file di registro. Devo anche prendere il percorso del file di registro dalla proprietà java.util.logging.FileHandler.pattern.Timeout Aggiunta nel nome del file di registro del logger Java Util

+0

Spero che tu stia usando slf4j come facciata di registrazione? –

+0

Usa log4j :) e pochi altri caratteri per soddisfare il minimo. –

risposta

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()); 
} 

questo ti restituisce un timestamp

-2

Date un'occhiata a questo post, spiega la registrazione in dettaglio.

È possibile utilizzare %t per tempo nel file di configurazione.

+1

Il collegamento non esiste più. java.util.logging.FileHandler non supporta% t –

+0

Questa è anche la directory temp ora (/ tmp) – Thomas

+0

https://docs.oracle.com/javase/7/docs/api/java/util/logging/FileHandler. html dice: "% t" la directory temporanea del sistema –

5

può Questo esempio ti aiuta.

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