You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@logging.apache.org by "Nick Kom (Jira)" <ji...@apache.org> on 2022/01/18 17:40:00 UTC
[jira] [Created] (LOG4J2-3346) After 2.17.0 upgarde Route appenders with dynamic file writing are not working
Nick Kom created LOG4J2-3346:
--------------------------------
Summary: After 2.17.0 upgarde Route appenders with dynamic file writing are not working
Key: LOG4J2-3346
URL: https://issues.apache.org/jira/browse/LOG4J2-3346
Project: Log4j 2
Issue Type: Bug
Components: Appenders
Affects Versions: 2.17.0
Environment: We switched from the version 2.11.1 to 2.17.0 and writing to separate files stopped working. Configuration log4j:
{code:xml}
<Appenders>
...
<Routing name="routing">
<Routes pattern="$${ctx:V_PID}">
<Route>
<RollingFile name="rolling-${ctx:V_PID}" fileName="${logPath}/task-${ctx:V_PID}.log"
filePattern="${logArchPath}/task-${ctx:V_PID}-${archFile}" ignoreExceptions="false">
<PatternLayout pattern="${pattern}"/>
<SizeBasedTriggeringPolicy size="10 MB"/>
</RollingFile>
</Route>
</Routes>
<IdlePurgePolicy timeToLive="2" timeUnit="minutes"/>
</Routing>
...
</Appenders>
<Loggers>
<Logger name="com.rou.let" level="trace">
<AppenderRef ref="routing"/>
</Logger>
</Loggers>{code}
In code we use Slf4J logger (org.slf4j.Logger) and org.apache.logging.log4j.ThreadContext :
{code:java}
ThreadContext.put("V_PID", pid);
org.slf4j.Logger logger =org.slf4j.LoggerFactory.getLogger(MessageFormat.format(...));
{code}
maven dependencies in pom.xml:
{code:xml}
....
<slf4j.version>1.7.7</slf4j.version>
<log4j2.version>2.17.0</log4j2.version>
...
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<version>${log4j2.version}</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>${log4j2.version}</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>${log4j2.version}</version>
</dependency>
...
{code}
We use this in our web application which is deployed on Weblogic 12.2.1.0.0
What can be wrong? Why aren't separate files (task-${ctx:V_PID}.log) created in the folder \{logPath}?
Before library version 2.12.2 (inclusive),it's worked!
Reporter: Nick Kom
--
This message was sent by Atlassian Jira
(v8.20.1#820001)