0
我正在使用log4j2-beta9,並且想要在嚴格模式下使用log4j2.xml進行配置。 我的問題是:如何指定不在提供的模式文件中的屬性? 一個例子:Log4j2使用嚴格xml配置的Appender屬性
<?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>
請注意,我想設置的附加器有目標SYSTEM_ERR
但屬性是不是在嚴格模式下不允許的。
target="SYSTEM_ERR"> <!-- cvc-complex-type.3.2.2: Attribute 'target' is not allowed to appear in element 'Appender'. -->
我隨時可以編輯Log4j-config.xsd
,並允許該屬性有但這是一種錯誤也因爲不是所有的appender有target
屬性。
由於搜索網絡到目前爲止沒有幫助我,我問你: 在嚴格的XML模式下配置Log4j2時是否有任何缺失?
我是否必須「修補」XMLConfiguration和模式文件並提交對log4j的更改,或者除了不使用嚴格模式外還有其他方法嗎?
在此先感謝。
已經完成了...請參閱http://mail-archives.apache.org/mod_mbox/logging-log4j-user/201310.mbox/%[email protected]%3E – user2523784