ログを報告するようにlog4j2.0を構成しようとしています。
私の設定はlog4j2.xmlとして保存され、これがその内容です。
<?xml version="1.0" encoding="UTF-8"?>
<configuration name="PRODUCTION" status="OFF">
<appenders>
<RollingFile name="MyFileAppender"
fileName="../Logs/app.log"
filePattern="../Logs/$${date:yyyy-MM}/app-%d{MM-dd-yyyy}-%i.log.gz">
<PatternLayout>
<pattern>%d %p %C{1.} [%t] %m%n</pattern>
</PatternLayout>
<Policies>
<OnStartupTriggeringPolicy />
<TimeBasedTriggeringPolicy interval="6" modulate="true"/>
<SizeBasedTriggeringPolicy size="250 MB"/>
</Policies>
</RollingFile>
</appenders>
<loggers>
<root level="trace">
<appender-ref ref="MyFileAppender"/>
</root>
</loggers>
</configuration>
プロジェクトのクラスパスに存在し、他の多くのディレクトリに配置してみました。
私は次のようなコードでロガーを作成しました:
Logger logger = LogManager.getLogger(MyClass.class.getName());
logger.info("test");
そして、何も書き込まれず、ファイルも作成されません。コードをデバッグすると、ロガーがデフォルトのロガー(コンソール)であることがわかります。