2013-06-08 2 views
1

У меня есть проблема и неопределенность, связанная с использованием Log4j.Запись в файл журнала с использованием log4j

  1. Я не могу записать журнал в файл. Я только получить предупреждение, что говорит:

log4j:WARN No such property [file] in org.apache.log4j.ConsoleAppender.

Вход в консоль работает нормально.

  1. Я хочу сохранить файл журнала вне контекстного корня. В этом случае, могу ли я жестко указать абсолютный путь в файл свойств? Извините, если это глупый вопрос.

Log4j.properties

# Root logger option 
log4j.rootCategory=INFO, file, stdout 

# Direct log messages to stdout 
log4j.appender.file=org.apache.log4j.FileAppender 
log4j.appender.file.File=/Users/me/Documents/apache-tomcat-7.0.34/wtpwebapps/my_app/log.txt 
log4j.appender.file.layout=org.apache.log4j.PatternLayout 
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n 

log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
log4j.appender.stdout.Target=System.out 
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n 

LogInit.java

String root = Environment.getRootDirectory(getServletContext()); 
    String propertiesUri = root + propertiesUriParameter; 
    File propertiesFile = new File(propertiesUri); 
    if (!propertiesFile.exists()) 
    { 
     System.out.println("Initializing log4j with: " + propertiesUri); 
     PropertyConfigurator.configure(propertiesUri); 
    } 
+0

Есть ли сообщение об ошибке? Путь в 'log4j.appender.file.File = Users/Me/Documents/apache-tomcat-7.0.34/wtpwebapps/my_app/log.txt' отсутствует ведущий'/'кстати (вы на OS X ?). –

+0

Я этого не заметил. Я вложил это, и код все еще не работает. Я получаю это предупреждение: 'INFO log4j: WARN Нет такого свойства [файл] в org.apache.log4j.ConsoleAppender.' –

ответ

2

Изменить это из:

log4j.appender.file.File = Пользователи/Me/Документы/apache-tomcat-7.0.34/wtpwebapps/my_app/log.txt

Для

log4j.appender.file.File =/Users/Me/Документы/апач-кот-7.0.34/wtpwebapps/my_app/log.txt

И убедитесь, что ниже путь существует

/Users/Me/Documents/apache-tomcat-7.0.34/wtpwebapps/my_app/l

Привет,

Шива Кумар SS

+0

Да, файла не существует. Спасибо за вашу помощь :) –

Смежные вопросы