log4j2-beta9 を使用しており、厳密モードで log4j2.xml を使用して構成したいと考えています。私の問題は、出荷されたスキーマ ファイルにない属性を指定するにはどうすればよいですか? 例:
<?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
その属性を許可することができましたが、すべてのアペンダーがtarget
属性を持っているわけではないため、それはちょっと間違っています。
Web を検索してもこれまでのところ役に立たなかったので、お尋ねします: Log4j2 を厳密な XML モードで構成する際に不足しているものはありますか?
XMLConfiguration とスキーマ ファイルに「パッチ」を適用し、変更を log4j にコミットする必要がありますか、それとも厳密モードを使用しない以外に別の方法がありますか?
前もって感謝します。