Salve a tutti,
vorrei sapere se il comportamento che ho riscontrato è corretto oppure ho fatto qualche errore!
Allora vorrei utilizzare le API del logging di java salvando i miei messaggi su file!
Dato che non mi interessa salvare molte informazioni (ma solo es. l'orario) mi son creato un mio Formatter
Inoltre il medoto dedicato alla stampa del messaggio è il seguente:codice:private class MyFormatter extends Formatter { //Override del metodo astratto public synchronized String format(LogRecord record) { // Creo stringa con "Data: Messaggio" } }
In effetti in questo modo salva su file correttamente anche secondo il formato da me impostato con la classe MyFormatter!codice:String logPath = "./Output//Receiver.log", logLevel = "ALL"; loggerReceiver = Logger.getLogger("PrintMessage-Receiver"); Handler handlerReceiver = null; try { handlerReceiver = new FileHandler(logPath, true); } catch (Exception l_Ex) { return false; } Formatter fmt = new MyFormatter(); handlerReceiver.setFormatter(fmt); loggerReceiver.addHandler(handlerReceiver); loggerReceiver.setLevel(Level.parse(logLevel)); loggerReceiver.log(Level.SEVERE, "Ciao");
Ciò che succede è che su console (cioè la System.out) mi stampa il messaggio secondo il formatter SimpleFormatter e no secondo il mio Formatter!
E' nomale questo funzionamento o mi son perso qualche settaggio!
Se questo funzionamento è normale, è possibile disabilitare l'output su console (mi crea un bel po' di confusione)
Grazie mille

Rispondi quotando
