Потеря файла журнала после перезапуска (log4j)

Я использую log4j, чтобы показать журнал в моем приложении Java. Я использую DailyRolligFileAppender для прокрутки файла журнала. Это работает хорошо, пока я не перезапущу manuel. Я потеряю последний файл журнала при перезапуске приложения. log4j возьмет этот файл, перезапишет его, поместит две строки журнала, затем создаст новый файл и запишет в него. Поэтому я теряю последний файл.

Например: у меня есть

App.log.2015-10-09
App.log.2015-10-10 (последний перезапуск)
App.log.2015-10-11
App.log.2015-10-12

Предположим, что последний перезапуск был в 2015-10-10. Если я перезапущу приложение в 2015-10-12, то log4j перезапишет содержимое файла App.log.2015-10-10, записав в эти строки:

Приложение - 12 октября 2015 г. 10:18:31 960 DEBUG - [PropertyMessageResources]
Приложение - 12 октября 2015 10:18:31 972 DEBUG - [ActionServlet] Завершение работы с сервлетом контроллера
Приложение - 12 октября 2015 10:18:31 977 ИНФОРМАЦИЯ - [GraniteConfigListener] GraniteDS остановлен

Затем он закроет этот файл и создаст новый файл с именемApp.logкоторый напишет текущий журнал.

это мой log4j.xml:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<!-- ALL < DEBUG < INFO < WARN < ERROR < FATAL < OFF -->

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"
 debug="false">

 <!-- ********** APPENDERS DEFINITION (begin) ********** -->
  
 <appender name="exp_FILE_APPENDER" class="org.apache.log4j.DailyRollingFileAppender">
  <param name="File" value="/data1/nom_app/logs/app.log" />
  <param name="Append" value="true" />
  <param name="DatePattern" value=".yyyy-MM-dd-HH-mm" />
  <layout class="org.apache.log4j.PatternLayout">
   <param name="ConversionPattern"
    value="nom_app - %d{DATE} %-5p %X{Batch}-%X{idSession}-%X{idRequete} [%c{1}] %m%n" />
  </layout>
 </appender>
  
 

  
 
 <!-- Delia -->
 <logger name="nom_package">
  <level value="DEBUG" />
 </logger>

 <!-- appender -->
 <root>
  <level value="DEBUG" />
  <appender-ref ref="exp_FILE_APPENDER" /> 
 </root>

</log4j:configuration>

Подскажите, пожалуйста, как мне сделать, чтобы избежать потери файла журнала.

0 ответов

Другие вопросы по тегам