0
をサポートしていないし、私は次のエラーを取得するに気づい:Log4j2 - 削除条件がありません:私は私のアプリでlog4j2を使用してい無条件削除が
Missing Delete conditions: unconditional Delete not supported
2017-02-16 12:21:25,286 http-nio-8080-exec-7 ERROR Error processing element And ([Delete: null]): CLASS_NOT_FOUND
2017-02-16 12:21:25,347 http-nio-8080-exec-7 ERROR Missing Delete conditions: unconditional Delete not supported
2017-02-16 12:21:25,347 http-nio-8080-exec-7 ERROR Unable to invoke factory method in class class org.apache.logging.log4j.core.appender.rolling.action.DeleteAction for element Delete. java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
が、これは私の設定です:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="warn">
<Properties>
<Property name="basePath">C:\\logs</Property>
</Properties>
<Appenders>
<RollingFile name="fileLogger" fileName="${basePath}/kiosk.log" filePattern="${basePath}/kiosk -%d{yyyy-MM-dd}.log">
<PatternLayout>
<pattern>[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n</pattern>
</PatternLayout>
<Policies>
<TimeBasedTriggeringPolicy interval="1" modulate="true" />
</Policies>
<DefaultRolloverStrategy stopCustomActionsOnError="true">
<!-- custom action executed asynchronously after the rollover -->
<Delete basePath="${basePath}" maxDepth="2" followLinks="false">
<And>
<IfFileName path="*/kiosk-*.log." /> <!-- delete only files matching this pattern -->
<IfLastModified duration="7d" /> <!-- delete if 7 days or older -->
</And>
</Delete>
</DefaultRolloverStrategy>
</RollingFile>
<Console name="console" target="SYSTEM_OUT">
<PatternLayout pattern="[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n" />
</Console>
</Appenders>
<Loggers>
<Logger name="uk.co.kiosk.logging" level="debug" additivity="true">
<appender-ref ref="fileLogger" level="debug" />
</Logger>
<Root level="debug" additivity="false">
<appender-ref ref="console" />
</Root>
</Loggers>
</Configuration>
私も持っています7日後にファイルが削除されていないことがわかりました。 これは私のMavenのエントリです:
dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.7</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.7</version>
</dependency>
は私が間違っているの何かがあり、いずれかを助言することができますか?彼らはファイルをうまく作成していますが、削除していないし、明らかにコンソールでこのエラーを取得しています。 アップロードできるものが他にもあれば、それはうれしいことです。