От: http://www.gunith.com/2010/11/how-to-get-the-file-path-of-a-log4j-log-file/
Предположим, что файл log4j.properties такой, как показано ниже,
log4j.logger.migrationlog = INFO, migration
log4j.appender.migration = org.apache.log4j.RollingFileAppender
log4j.appender.migration.File = C:/work/log/migration.log
log4j.appender.migration.MaxFileSize=20MB
log4j.appender.migration.MaxBackupIndex=1
log4j.appender.migration.layout = org.apache.log4j.PatternLayout
log4j.appender.migration.layout.conversionPattern = %d %-5p %c - %m%n
В таком случае ваш код Java должен выглядеть следующим образом:
Logger logger = Logger.getLogger("migrationlog"); //Defining the Logger
FileAppender appender = (FileAppender)logger.getAppender("migration");
return new File(appender.getFile());
Обратите внимание, что miglog использовался для создания объекта регистратора в первой строке.
И миграция используется для получения FileAppender, который в свою очередь вызывает getFile () для получения объекта File журнала.