Ho un'applicazione legacy PSVM che mi piacerebbe reindirizzare l'output di registrazione a file univoci per esecuzione. Quindi, se lo invoco alle 10:00, fallo reindirizzare l'output a {thread-id} -10: 00.log; e un altro thread di esecuzione può iniziare un'esecuzione alle 10:01 e il suo output andrebbe a {thread-id} -10: 01.log. Capisco che questo non è elegante.creazione e distruzione dinamiche degli allegati di registrazione
Le mie domande sono:
- è possibile?
- qualcuno ha un'idea di come avvicinarsi?
- è possibile rilasciare/distruggere un appender quando non è più necessario?
Grazie!
grazie per la risposta rapida! non è il caso per un thread di farlo più di una volta. Ma, in ogni caso, questo è solo un esempio a fini di discussione. il nome sarebbe ambito per l'unicità. Qualche idea su come rilasciare il file writer? –
+1 Buon collegamento tutorial – WolfmanDragon
Re. rilasciando. Penso che dovresti lavare lo scrittore dopo ogni messaggio di log (per assicurarti di scrivere su disco), e non preoccuparti di rilasciarlo. Lascia che la JVM abbassi tutto. A meno che tu non stia scrivendo molti thread e abbia molti file aperti. Quindi potresti semplicemente voler tenere aperti i "n" scrittori e chiuderne alcuni quando non sei loggato. Ciò potrebbe causare alcuni problemi, tuttavia :-) –