Domanda

Ho visto molte domande sugli argomenti di cui sopra, ma nessuno che risolve questo problema. Sto cercando di utilizzare log4j per accedere a un file personalizzato nella directory $ CATALINA_BASE / logs /. Ho configurato il file log4j.xml e l'ho copiato nella directory $ CATALINA_BASE / lib /.

Uso le seguenti righe per creare il logger -

Layout PatternLayout = new PatternLayout (); FileAppender appender = new FileAppender (" nomefile.txt ");

Questo è dove è il mio problema. Come posso fare in modo che FileAppender prenda il nome del file che ho configurato in log4j.xml?

Speravo che lo riprendesse automaticamente, ma non esiste un costruttore per FileAppender che non prenda un nome file.

Devo leggere log4j.xml per ottenere il nome del file? Se è così, perché nel mondo devo impostare quella proprietà nel file XML?

Qualsiasi aiuto sarebbe molto apprezzato.

Grazie, - Vas

È stato utile?

Soluzione

Hmm ... perché stai creando un FileAppender nel codice? Basta creare un logger usando LoggerFactory specificando la stringa (di solito nel formato com.xxx.yyy configurato nel file XML / properties log4j) e avviare la registrazione. Assicurati che il logger sia configurato per utilizzare l'implementazione di FileAppender (Daily o RollingFile) nel file di configurazione e sei pronto per andare.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top