2016-05-03 4 views
0

Привет я новичок с помощью LOG4Jlog4j2 не писать в лог-файл с rollingFile appenders

Я пытаюсь настроить XML для отправки тех, войдя в лог-файл, используя и Appender, ну, Appender прекрасно работает так я хочу использовать appender, чтобы он ежедневно очищал файл журнала, но когда он сначала создавал файл журнала, он не записывал никакого сообщения журнала в созданный файл, поэтому я пришел сюда, чтобы получить некоторые советы

<?xml version="1.0" encoding="UTF-8"?> 
<Configuration status="FATAL" > 

<Appenders> 
    <Console name="Console" target="SYSTEM_OUT"> 
     <PatternLayout pattern="${pattern}" /> 
    </Console> 

    <RollingFile name="rollingfile" fileName="rolling.log" 
    filePattern="rolling-%d{MM-dd-yyyy}.log"> 
     <PatternLayout pattern="${pattern}" /> 
     <Policies> 
       <TimeBasedTriggeringPolicy interval="1" modulate="true" /> 
       <SizeBasedTriggeringPolicy size="10 MB" /> 
     </Policies> 
    </RollingFile> 

    <File name="file" fileName="test2.log"> 
     <PatternLayout pattern="${pattern}" /> 
    </File>  

</Appenders> 


<Loggers> 
    <Root level="trace" > 
     <AppenderRef ref="Console" /> 
     <AppenderRef ref="rollingfile" /> 
     <AppenderRef ref="file" /> 
    </Root> 
</Loggers> 
</Configuration> 
+1

+0

Ах да я просто понял это с двойной проверкой:/ К сожалению об этом , но все же после того, как я исправить его с таким же названием, как «rollingfile» лог-файл все еще пуст, как много раз я перепрограммирую свою страницу, пытаюсь сгенерировать запись журнала, отлично до «файла», но «скользящий файл» все еще пуст:/ Я не могу понять, почему – Hyperventilate

ответ

0

У вас есть AppenderRef="rolling", но ваш Appender называется «прокат файлов». Они должны соответствовать.

Кроме того, log4j, вероятно, выдает предупреждение о наличии проблемы с конфигурацией. Я рекомендую вам указать <Configuration status="WARN" > в начале вашей конфигурации вместо FATAL, чтобы вы могли видеть эти предупреждения.

Возможно, вам необходимо указать ${sys:pattern}, чтобы прочитать системное свойство. Вместо переменной ${pattern} сначала попробуйте явный шаблон, например %d %p [%t] %m%n.

+0

О, да, я просто разобрался с двойной проверкой:/ об этом , но все же после того, как я исправлю его с тем же именем, что и «rollfile», файл журнала по-прежнему пуст, сколько раз я перепрошиваю свою страницу, попытаюсь сгенерировать запись журнала, отлично до «файла», но «скользящий файл» все еще пуст :/ Я не могу понять, почему – Hyperventilate

+0

Обновлено: используйте префикс 'sys:' для поиска системной собственности. –

+0

Большое спасибо! это работает!! – Hyperventilate

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