Log4j de hora em hora

2 respostas
N

Galera, tenho o seguinte arquivo de configuração do log4j.

log4j.rootLogger=info, stdout, R, Ganymede

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

Pattern to output the caller’s file name and line number.

log4j.appender.stdout.layout.ConversionPattern=%d [%5p] - %m%n

log4j.appender.R=org.apache.log4j.DailyRollingFileAppender
log4j.appender.R.File=example.log
log4j.appender.R.DatePattern=’.'yyyy-MM-dd
#log4j.appender.R.MaxFileSize=100KB

Keep one backup file

#log4j.appender.R.MaxBackupIndex=1
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%5p %d{dd MMM HH:mm:ss} [%t] %c - %m%n>
#log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n

log4j.appender.Ganymede=org.apache.log4j.net.SocketAppender
log4j.appender.Ganymede.remoteHost=localhost
log4j.appender.Ganymede.port=4445
log4j.appender.Ganymede.locationInfo=true

Eu gostaria de saber como faço para poder gerar o arquivo de log de hora em hora.
Teoricamente este está gerando todo um dia um novo arquivo. Preciso gerar de hora em hora.

Abraços.

2 Respostas

T

Você precisaria fazer uma nova classe, que tivesse o mesmo comportamento da classe que você está usando (DailyRollingFileAppender), só que fosse de hora em hora. Não deve ser muito difícil; talvez é só questão de você pegar o fonte de DailyRollingFileAppender e fazer algumas pequenas alterações, e mudar “log4j.appender.R=org.apache.log4j.DailyRollingFileAppender” por “log4j.appender.R=seu.pacote.HourlyRollingFileAppender” (supondo que sua classe se chame seu.pacote.HourlyRollingFileAppender)

http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/DailyRollingFileAppender.html

Rubem_Azenha

Thingol, eu li o javadoc que você linkou e acabei vendo algo que eu não sabia, você pode configurar a o DailyRollingFileAppender para gerar o arquivo de log na periodicidade que você quiser!

Não vai precisar nem criar uma nova classe!

Criado 6 de outubro de 2008
Ultima resposta 6 de out. de 2008
Respostas 2
Participantes 3