2013-10-10 4 views
0

Я использую log4j2-beta9 и хочу настроить его с помощью log4j2.xml в строгом режиме. Моя проблема: как указать атрибуты, отсутствующие в отправленном файле схемы? Пример:Log4j2 Appender атрибуты со строгим xml config

<?xml version="1.0" encoding="UTF-8" ?> 
<Configuration 
    status="DEBUG" 
    strict="true" 
    monitorInterval="5" 
    name="TestingAttributes" 
    verbose="true" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:noNamespaceSchemaLocation="Log4j-config.xsd"> 
    <Properties> 
    </Properties> 
    <Appenders> 
     <Appender 
      type="Console" 
      name="SYSERR" 
      target="SYSTEM_ERR"> <!-- cvc-complex-type.3.2.2: Attribute 'target' is not allowed to appear in element 'Appender'. --> 
      <Layout Type="PatternLayout"> 
       <Pattern>%date{dd.MM.yyyy HH:mm:ss,SSS} %5p %logger %m%n</Pattern> 
      </Layout> 
      <Filters> 
       <Filter 
        type="MarkerFilter" 
        marker="FLOW" 
        onMatch="DENY" 

        onMismatch="NEUTRAL" /> 
       <Filter 
        type="MarkerFilter" 
        marker="EXCEPTION" 
        onMatch="DENY" 
        onMismatch="NEUTRAL" /> 
      </Filters> 
     </Appender> 
    </Appenders> 
    <Loggers> 
     <Root level="debug"> 
      <AppenderRef ref="SYSERR" /> 
     </Root> 
    </Loggers> 
</Configuration> 

Обратите внимание, что я хочу, чтобы установить Appender иметь цель SYSTEM_ERR но атрибут не допускается в строгом режиме.

target="SYSTEM_ERR"> <!-- cvc-complex-type.3.2.2: Attribute 'target' is not allowed to appear in element 'Appender'. --> 

Я всегда мог изменить Log4j-config.xsd и разрешить этот атрибут там, но это было бы своего рода неправильно и потому, что не все appenders имеют атрибут target.

Поскольку поиск в Интернете не помог мне до сих пор, я спрашиваю вас: Есть ли что-то, что мне не хватает при настройке Log4j2 в строгом режиме XML?

Должен ли я «исправлять» XMLConfiguration и файл схемы и вносить изменения в log4j, или есть ли другой способ, кроме использования строгого режима?

Заранее спасибо.

ответ

0

Можете ли вы спросить об этом в списке рассылки log4j? Это может быть ошибкой в ​​схеме, но я подозреваю, что схема может сделать больше улучшений, и ваши отзывы будут полезными.

+0

Сделали это ... см. Http://mail-archives.apache.org/mod_mbox/logging-log4j-user/201310.mbox/%[email protected]%3E – user2523784