Ich versuche, Routing für log4j2-Dateien hinzuzufügen, um in Dateien mit Namen mit ihrer Prozess-ID zu protokollieren. Dies funktioniert mit dem Routing und der Angabe von Code, der eine Suche nach der Prozess-ID einfügt. Die Dateien scheinen jedoch nicht mehr korrekt zu archivieren - jedes Mal, wenn ich den Prozess starte, wird eine neue Datei korrekt mit der Prozess-ID generiert, aber nichts wird jemals in das Archiv-Verzeichnis geschrieben.Log4J2 mit Routing appender archiviert keine Dateien
Auch konnte ich nicht herausfinden, wie man höchstens 5 Dateien im Archiv zu sagen, auch wenn ich nicht Routing, sondern nur RollingFile Appender mit einer OnstartupTriggeringPolicy.
<Routing name="Routing">
<Routes pattern="$${process:Id}">
<Route>
<RollingFile name="logFile"
fileName="${LOG_DIR}/erdaemon-${process:Id}.log"
filePattern="${ARCHIVE}/erdaemon.%d{yyyy-MM-dd-hh-mm}.log">
<PatternLayout pattern="${PATTERN}" />
<Policies>
<OnStartupTriggeringPolicy />
</Policies>
</RollingFile>
</Route>
</Routes>
</Routing>
<Async name="async" bufferSize="1000" includeLocation="true">
<AppenderRef ref="Routing" />
</Async>
</Appenders>
<Loggers>
<Root level="INFO">
<AppenderRef ref="async"/>
</Root>
<Logger name="testlogger" level="TRACE" additivity="false">
<AppenderRef ref="async"/>
</Logger>