2015-07-30 1 views
0

Я пытаюсь настроить мое приложение (которое использует log4j в качестве механизма ведения журнала) для записи сообщений с UTC-08:00 времени, но оно бросает ошибки, когда log4j инициализируется, и сообщения продолжаются до регистрироваться с системным временем. Я не уверен, что параметр TimeZone неприемлем для макета PatterLayout. Может ли кто-нибудь помочь мне выяснить, что я делаю неправильно здесь?Невозможно настроить часовой пояс для log4j console appender

Log4J Конфигурация:

<appender name="CustomAppender" class="org.apache.log4j.ConsoleAppender"> 
    <layout class="org.apache.log4j.PatternLayout"> 
     <param name="ConversionPattern" value="%d{MM:dd:yyyy HH:mm:ss} %m%n" /> 
     <param name="TimeZone" value="UTC-08:00" /> 
    </layout> 
</appender> 

<root> 
    <priority value="debug" /> 
    <appender-ref ref="CustomAppender" /> 
</root> 

предупреждающее сообщение отображается при инициализации log4j есть,

log4j:WARN No such property [timeZone] in org.apache.log4j.PatternLayout. 

ответ

0

Следующая конфигурация log4j, что я использовал для преобразования времени для конкретной временной зоны. Я добавил этот ответ для моей будущей ссылки.

Log4J Конфигурация:

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

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

    <appender name="CustomAppender" class="org.apache.log4j.ConsoleAppender"> 
     <layout class="org.apache.log4j.EnhancedPatternLayout"> 
      <param name="ConversionPattern" value="%d{DATE}{IST} IST %-5p [%t] %c: %m%n"/> 
     </layout> 
    </appender> 

    <root> 
     <priority value="debug" /> 
     <appender-ref ref="CustomAppender" /> 
    </root> 

</log4j:configuration> 

Строка {IST} в схеме преобразования выше будет преобразовывать время индийского стандартного времени, а другая строка IST будет добавлена ​​в сообщении регистратора (это не обязательно).

Вы можете использовать любой ISO-8601 часовой пояс в шаблоне преобразования - либо по имени часового пояса, как IST или со смещением, как UTC+05:30

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