Estou testando o log4j.
Criei um arquivo log4j.properties no path da minha aplicação.
Está funcionado direitinho, consigo gravar o arquivo de log.
Só que o arquivo de log é gravado na pasta bin do tomcat (estou usando o tomcat do netbeans).
Eu queria gravar o arquivo de log numa pasta dentro da minha aplicação.
Minha dúvida é em relação a linha abaixo.
# Set root logger level to DEBUG and its only appender to fileOut.
log4j.rootLogger=DEBUG, fileOut
#ordem: DEBUG - INFO - WARN - ERROR - FATAL
# fileOut is set to be a ConsoleAppender.
log4j.appender.fileOut=org.apache.log4j.ConsoleAppender
# fileOut uses PatternLayout.
log4j.appender.fileOut.layout=org.apache.log4j.PatternLayout
# Print the date in ISO 8601 format
#log4j.appender.fileOut.layout.ConversionPattern=%d [%t] %-5p %c - %m%n
#log4j.appender.fileOut.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
#log4j.appender.fileOut.layout.ConversionPattern=%p %t %c - %m%n
log4j.appender.fileOut.layout.ConversionPattern=%d %-5p - %m - [%c] %n
# Pattern to output the caller's file name and line number.
#log4j.appender.fileOut.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n
log4j.appender.fileOut=org.apache.log4j.RollingFileAppender
log4j.appender.fileOut.File=D:/log/aplicacaoX/x_debug_.log
log4j.appender.fileOut.MaxFileSize=1000KB
# Keep one backup file
log4j.appender.fileOut.MaxBackupIndex=5
Mas eu gostaria que o caminho para a criação do arquivo não fosse absoluto.
Preciso apontar esse caminho de forma dinâmica.
A minha grande dificuldade está em apontar a pasta raíz da minha apliação através do meu arquivo log4j.properties.
Mas eu gostaria que o caminho para a criação do arquivo não fosse absoluto.
Preciso apontar esse caminho de forma dinâmica.
A minha grande dificuldade está em apontar a pasta raíz da minha apliação através do meu arquivo log4j.properties.
Não tenho certeza, mas não tem como passar isso por dentro da aplicação em vez de cetar pelo arquivo properties? Se sim, fica fácil via programação vc pegar o caminho da sua aplicação…
Mas eu gostaria que o caminho para a criação do arquivo não fosse absoluto.
Preciso apontar esse caminho de forma dinâmica.
A minha grande dificuldade está em apontar a pasta raíz da minha apliação através do meu arquivo log4j.properties.
Alguém tem alguma idéia de como fazer isso?
Muito obrigada!
[/quote]
log4j.appender.fileOut.File=log/fis.log
Assim fica relativo ao diretorio de execução[/quote]
Olá fabio falci,
Testei a sua sugestão.
Mas desta forma ele cria uma pasta log com o arquivo fis.log no diretório raíz da minha máquina.
Testei a sua sugestão.
Mas desta forma ele cria uma pasta log com o arquivo fis.log no diretório raíz da minha máquina.
Vou verificar a sugestão anterior.
Obrigada![/quote]
Sim, entao o teu diretório de execução é a raiz da sua maquina.
Tenta ir num diretório diferente, por exemplo
/tmp/
e execute a sua aplicação de lá, vai ser criado então
/tmp/log/fis.log
Testei a sua sugestão.
Mas desta forma ele cria uma pasta log com o arquivo fis.log no diretório raíz da minha máquina.
Vou verificar a sugestão anterior.
Obrigada![/quote]
Sim, entao o teu diretório de execução é a raiz da sua maquina.
Tenta ir num diretório diferente, por exemplo
/tmp/
e execute a sua aplicação de lá, vai ser criado então
/tmp/log/fis.log[/quote]
Bom dia fabio,
Desculpa, mas eu não entendi o que vc disse.
" Tenta ir num diretório diferente, por exemplo
/tmp/
e execute a sua aplicação de lá, "
Ou melhor, como ir para um diretório diferente?
Desculpa, mas é que não tenho muita experiência…
" Tenta ir num diretório diferente, por exemplo
/tmp/
e execute a sua aplicação de lá, "
Ou melhor, como ir para um diretório diferente?
Desculpa, mas é que não tenho muita experiência…
[/quote]
Como tu está executando a aplicação? linha de comando? icone?
Se linha de comando, tente assim:
> cd /tmp
> java -jar ....
Ou seja teu diretório de execução é o /tmp/ entao o dir de log vai estar la.
Agora se for algum ícone, do windows por exemplo, tem q ir nas propriedades dele e
o diretório de execução é o ‘Iniciar em:’ (windows em portugues).[/quote]
Olá fabio,
Desculpa, esqueci de falar.
A minha aplicação é web.
Como a minha aplicação vai rodar num servidor,
eu tenho que apontar o caminho para a pasta que armazenará os log.
Como falei anteriormente, preciso que o caminho seja dinâmico.
Pois se o caminho da pasta ficar estático, e por algum acaso eu tiver que mudar a mnha aplicação de servidor,
vou ter que modificar o caminho na mão.