[ 
https://issues.apache.org/jira/browse/LOG4J2-3678?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pavel_K updated LOG4J2-3678:
----------------------------
    Description: 
The problem occurs when Log4j2 is used with JUL + when it is necessary to use 
shutdownHook in an application. So, this is java code:


{code:java}
import java.io.IOException;
import java.io.InputStream;
import java.util.logging.Level;
import java.util.logging.LogManager;
import java.util.logging.Logger;

public class Mavenproject10 {

    static {
        try (InputStream is = Mavenproject10.class.getClassLoader().
                getResourceAsStream("logging.properties")) {
            LogManager.getLogManager().readConfiguration(is);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    private static final Logger logger = 
Logger.getLogger(Mavenproject10.class.getName());

    public static void main(String[] args) {
        org.apache.logging.log4j.jul.LogManager weNeedThisClass = null;
        logger.log(Level.SEVERE, "That is very bad");
        org.apache.logging.log4j.LogManager.shutdown();
        System.exit(0);
    }
}
{code}

This is logging.properties:

{code:java}
handlers= java.util.logging.ConsoleHandler
.level= ALL
java.util.logging.ConsoleHandler.level = ALL
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
java.util.logging.SimpleFormatter.format=%4$s: %5$s [%1$tc]%n
{code}

This is log4j2.xml:

{code:java}
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="trace" shutdownHook="disable">
    <Appenders>
        <Console name="Console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] 
%highlight{[%level]}{FATAL=red blink, ERROR=red bold, WARN=yellow bold, 
INFO=magenta bold, DEBUG=green bold, TRACE=blue bold} %logger{36} - %msg%n" 
disableAnsi="false"/>
        </Console>
        <File name="File" fileName="/home/pavel/Temp/mavenproject10.log" 
immediateFlush="true" append="false">
            <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} 
%highlight{[%level]}{FATAL=bright_red bold, ERROR=red bold, WARN=yellow bold, 
INFO=blue bold, DEBUG=green bold, TRACE=magenta bold} [%t] %logger{36} - 
%msg%n" disableAnsi="false"/>
        </File>
    </Appenders>

    <Loggers>
        <Root level="debug">
            <AppenderRef ref="File"/>
            <AppenderRef ref="Console"/>
        </Root>
    </Loggers>
</Configuration>
{code}

This is how we run program:

{code:java}
java -Djava.util.logging.manager=org.apache.logging.log4j.jul.LogManager -jar 
mavenproject10-1.0.0.jar
{code}

This is the output:

{code:java}
DEBUG StatusConsoleListener null null initializing configuration 
XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
DEBUG StatusConsoleListener PluginManager 'Core' found 131 plugins
DEBUG StatusConsoleListener PluginManager 'Level' found 0 plugins
DEBUG StatusConsoleListener PluginManager 'Lookup' found 16 plugins
DEBUG StatusConsoleListener Building Plugin[name=layout, 
class=org.apache.logging.log4j.core.layout.PatternLayout].
TRACE StatusConsoleListener TypeConverterRegistry initializing.
DEBUG StatusConsoleListener PluginManager 'TypeConverter' found 26 plugins
DEBUG StatusConsoleListener PatternLayout$Builder(pattern="%d{HH:mm:ss.SSS} 
[%t] %highlight{[%level]}{FATAL=red blink, ERROR=red bold, WARN=yellow bold, 
INFO=magenta bold, DEBUG=green bold, TRACE=blue bold} %logger{36} - %msg%n", 
PatternSelector=null, 
Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
 Replace=null, charset="null", alwaysWriteExceptions="null", 
disableAnsi="false", noConsoleNoAnsi="null", header="null", footer="null")
DEBUG StatusConsoleListener PluginManager 'Converter' found 45 plugins
DEBUG StatusConsoleListener Building Plugin[name=appender, 
class=org.apache.logging.log4j.core.appender.ConsoleAppender].
DEBUG StatusConsoleListener ConsoleAppender$Builder(target="SYSTEM_OUT", 
follow="null", direct="null", bufferedIo="null", bufferSize="null", 
immediateFlush="null", ignoreExceptions="null", PatternLayout(%d{HH:mm:ss.SSS} 
[%t] %highlight{[%level]}{FATAL=red blink, ERROR=red bold, WARN=yellow bold, 
INFO=magenta bold, DEBUG=green bold, TRACE=blue bold} %logger{36} - %msg%n), 
name="Console", 
Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
 Filter=null, ={})
DEBUG StatusConsoleListener Starting OutputStreamManager SYSTEM_OUT.false.false
DEBUG StatusConsoleListener Building Plugin[name=layout, 
class=org.apache.logging.log4j.core.layout.PatternLayout].
DEBUG StatusConsoleListener PatternLayout$Builder(pattern="%d{yyyy-MM-dd 
HH:mm:ss.SSS} %highlight{[%level]}{FATAL=bright_red bold, ERROR=red bold, 
WARN=yellow bold, INFO=blue bold, DEBUG=green bold, TRACE=magenta bold} [%t] 
%logger{36} - %msg%n", PatternSelector=null, 
Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
 Replace=null, charset="null", alwaysWriteExceptions="null", 
disableAnsi="false", noConsoleNoAnsi="null", header="null", footer="null")
DEBUG StatusConsoleListener Building Plugin[name=appender, 
class=org.apache.logging.log4j.core.appender.FileAppender].
DEBUG StatusConsoleListener 
FileAppender$Builder(fileName="/home/pavel/Temp/mavenproject10.log", 
append="false", locking="null", advertise="null", advertiseUri="null", 
createOnDemand="null", filePermissions="null", fileOwner="null", 
fileGroup="null", bufferedIo="null", bufferSize="null", immediateFlush="true", 
ignoreExceptions="null", PatternLayout(%d{yyyy-MM-dd HH:mm:ss.SSS} 
%highlight{[%level]}{FATAL=bright_red bold, ERROR=red bold, WARN=yellow bold, 
INFO=blue bold, DEBUG=green bold, TRACE=magenta bold} [%t] %logger{36} - 
%msg%n), name="File", 
Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
 Filter=null, ={})
DEBUG StatusConsoleListener Starting FileManager 
/home/pavel/Temp/mavenproject10.log
DEBUG StatusConsoleListener Building Plugin[name=appenders, 
class=org.apache.logging.log4j.core.config.AppendersPlugin].
DEBUG StatusConsoleListener createAppenders(={Console, File})
DEBUG StatusConsoleListener Building Plugin[name=AppenderRef, 
class=org.apache.logging.log4j.core.config.AppenderRef].
DEBUG StatusConsoleListener createAppenderRef(ref="File", level="null", 
Filter=null)
DEBUG StatusConsoleListener Building Plugin[name=AppenderRef, 
class=org.apache.logging.log4j.core.config.AppenderRef].
DEBUG StatusConsoleListener createAppenderRef(ref="Console", level="null", 
Filter=null)
DEBUG StatusConsoleListener Building Plugin[name=root, 
class=org.apache.logging.log4j.core.config.LoggerConfig$RootLogger].
DEBUG StatusConsoleListener LoggerConfig$RootLogger$Builder(additivity="null", 
level="DEBUG", levelAndRefs="null", includeLocation="null", ={File, Console}, 
={}, 
Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
 Filter=null)
DEBUG StatusConsoleListener Building Plugin[name=loggers, 
class=org.apache.logging.log4j.core.config.LoggersPlugin].
DEBUG StatusConsoleListener createLoggers(={root})
DEBUG StatusConsoleListener Configuration 
XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
 initialized
DEBUG StatusConsoleListener Starting configuration 
XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
DEBUG StatusConsoleListener Started configuration 
XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
 OK.
TRACE StatusConsoleListener Stopping 
org.apache.logging.log4j.core.config.DefaultConfiguration@cb51256...
TRACE StatusConsoleListener DefaultConfiguration notified 1 
ReliabilityStrategies that config will be stopped.
TRACE StatusConsoleListener DefaultConfiguration stopping root LoggerConfig.
TRACE StatusConsoleListener DefaultConfiguration notifying 
ReliabilityStrategies that appenders will be stopped.
TRACE StatusConsoleListener DefaultConfiguration stopping remaining Appenders.
DEBUG StatusConsoleListener Shutting down OutputStreamManager 
SYSTEM_OUT.false.false-1
DEBUG StatusConsoleListener OutputStream closed
DEBUG StatusConsoleListener Shut down OutputStreamManager 
SYSTEM_OUT.false.false-1, all resources released: true
DEBUG StatusConsoleListener Appender DefaultConsole-1 stopped with status true
TRACE StatusConsoleListener DefaultConfiguration stopped 1 remaining Appenders.
TRACE StatusConsoleListener DefaultConfiguration cleaning Appenders from 1 
LoggerConfigs.
DEBUG StatusConsoleListener Stopped 
org.apache.logging.log4j.core.config.DefaultConfiguration@cb51256 OK
TRACE StatusConsoleListener Call to LogManager.getLogger(javax.management)
TRACE StatusConsoleListener Call to 
LogManager.getLogger(javax.management.mbeanserver)
TRACE StatusConsoleListener Call to LogManager.getLogger(javax.management.mlet)
TRACE StatusConsoleListener Call to 
LogManager.getLogger(javax.management.monitor)
TRACE StatusConsoleListener Call to LogManager.getLogger(javax.management.timer)
TRACE StatusConsoleListener Call to 
LogManager.getLogger(javax.management.notification)
TRACE StatusConsoleListener Call to 
LogManager.getLogger(javax.management.relation)
TRACE StatusConsoleListener Call to 
LogManager.getLogger(javax.management.modelmbean)
TRACE StatusConsoleListener Call to LogManager.getLogger(javax.management.misc)
TRACE StatusConsoleListener Reregistering MBeans after reconfigure. 
Selector=org.apache.logging.log4j.core.selector.ClassLoaderContextSelector@1e683a3e
TRACE StatusConsoleListener Reregistering context (1/1): '4f2410ac' 
org.apache.logging.log4j.core.LoggerContext@7f3b84b8
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=StatusLogger'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=ContextSelector'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=*'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=*'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=AsyncAppenders,name=*'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=AsyncLoggerRingBuffer'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=*,subtype=RingBuffer'
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac,component=StatusLogger
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac,component=ContextSelector
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=Console
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=File
TRACE StatusConsoleListener Using default SystemClock for timestamps.
DEBUG StatusConsoleListener org.apache.logging.log4j.core.util.SystemClock 
supports precise timestamps.
TRACE StatusConsoleListener Using DummyNanoClock for nanosecond timestamps.
DEBUG StatusConsoleListener Reconfiguration complete for context[name=4f2410ac] 
at URI jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml 
(org.apache.logging.log4j.core.LoggerContext@7f3b84b8) with optional 
ClassLoader: null
DEBUG StatusConsoleListener LoggerContext[name=4f2410ac, 
org.apache.logging.log4j.core.LoggerContext@7f3b84b8] started OK.
02:22:40.245 [main] [ERROR] com.foo.mavenproject10.Mavenproject10 - That is 
very bad
DEBUG StatusConsoleListener Stopping LoggerContext[name=4f2410ac, 
org.apache.logging.log4j.core.LoggerContext@7f3b84b8]...
TRACE StatusConsoleListener Unregistering 1 MBeans: 
[org.apache.logging.log4j2:type=4f2410ac]
TRACE StatusConsoleListener Unregistering 1 MBeans: 
[org.apache.logging.log4j2:type=4f2410ac,component=StatusLogger]
TRACE StatusConsoleListener Unregistering 1 MBeans: 
[org.apache.logging.log4j2:type=4f2410ac,component=ContextSelector]
TRACE StatusConsoleListener Unregistering 1 MBeans: 
[org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=]
TRACE StatusConsoleListener Unregistering 2 MBeans: 
[org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=Console, 
org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=File]
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=AsyncAppenders,name=*'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=AsyncLoggerRingBuffer'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=*,subtype=RingBuffer'
TRACE StatusConsoleListener Stopping 
XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]...
TRACE StatusConsoleListener XmlConfiguration notified 2 ReliabilityStrategies 
that config will be stopped.
TRACE StatusConsoleListener XmlConfiguration stopping 1 LoggerConfigs.
TRACE StatusConsoleListener XmlConfiguration stopping root LoggerConfig.
TRACE StatusConsoleListener XmlConfiguration notifying ReliabilityStrategies 
that appenders will be stopped.
TRACE StatusConsoleListener XmlConfiguration stopping remaining Appenders.
DEBUG StatusConsoleListener Shutting down FileManager 
/home/pavel/Temp/mavenproject10.log
DEBUG StatusConsoleListener OutputStream closed
DEBUG StatusConsoleListener Shut down FileManager 
/home/pavel/Temp/mavenproject10.log, all resources released: true
DEBUG StatusConsoleListener Appender File stopped with status true
DEBUG StatusConsoleListener Shutting down OutputStreamManager 
SYSTEM_OUT.false.false
DEBUG StatusConsoleListener OutputStream closed
DEBUG StatusConsoleListener Shut down OutputStreamManager 
SYSTEM_OUT.false.false, all resources released: true
DEBUG StatusConsoleListener Appender Console stopped with status true
TRACE StatusConsoleListener XmlConfiguration stopped 2 remaining Appenders.
TRACE StatusConsoleListener XmlConfiguration cleaning Appenders from 2 
LoggerConfigs.
DEBUG StatusConsoleListener Stopped 
XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
 OK
DEBUG StatusConsoleListener Stopped LoggerContext[name=4f2410ac, 
org.apache.logging.log4j.core.LoggerContext@7f3b84b8] with status true
TRACE StatusConsoleListener Call to LogManager.getLogger(java.lang.Runtime)
DEBUG StatusConsoleListener PluginManager 'Lookup' found 16 plugins
DEBUG StatusConsoleListener PluginManager 'Converter' found 45 plugins
DEBUG StatusConsoleListener Starting OutputStreamManager 
SYSTEM_OUT.false.false-2
DEBUG StatusConsoleListener Starting LoggerContext[name=4f2410ac, 
org.apache.logging.log4j.core.LoggerContext@d5b810e]...
DEBUG StatusConsoleListener Reconfiguration started for context[name=4f2410ac] 
at URI null (org.apache.logging.log4j.core.LoggerContext@d5b810e) with optional 
ClassLoader: null
DEBUG StatusConsoleListener Using configurationFactory 
org.apache.logging.log4j.core.config.ConfigurationFactory$Factory@43dac38f
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.properties] 
using context class loader 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.properties] 
using jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.properties] 
using jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.properties] 
using ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yml] using 
context class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yml] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yaml] using 
context class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yaml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yaml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yaml] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.json] using 
context class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.json] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.json] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.json] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.jsn] using 
context class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.jsn] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.jsn] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.jsn] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.xml] using 
context class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.xml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.xml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.xml] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2-test.properties] using 
context class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test.properties] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.properties] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.properties] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2-test.yml] using context 
class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test.yml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.yml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.yml] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2-test.yaml] using context 
class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test.yaml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.yaml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.yaml] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2-test.json] using context 
class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test.json] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.json] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.json] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2-test.jsn] using context 
class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test.jsn] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.jsn] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.jsn] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2-test.xml] using context 
class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test.xml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.xml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.xml] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.properties] using 
context class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.properties] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.properties] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.properties] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yml] using context 
class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yml] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yaml] using context 
class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yaml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yaml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yaml] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.json] using context 
class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.json] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.json] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.json] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.jsn] using context 
class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.jsn] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.jsn] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.jsn] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.xml] using context 
class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.xml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.xml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.xml] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2.properties] using context 
class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2.properties] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2.properties] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2.properties] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2.yml] using context class 
loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2.yml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2.yml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2.yml] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2.yaml] using context class 
loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2.yaml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2.yaml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2.yaml] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2.json] using context class 
loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2.json] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2.json] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2.json] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2.jsn] using context class 
loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2.jsn] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2.jsn] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2.jsn] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2.xml] using context class 
loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
DEBUG StatusConsoleListener uri does not represent a local file: 
jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml
DEBUG StatusConsoleListener PluginManager 'Lookup' found 16 plugins
DEBUG StatusConsoleListener Closing JarURLInputStream 
sun.net.www.protocol.jar.JarURLConnection$JarURLInputStream@54bff557
DEBUG StatusConsoleListener null null initializing configuration 
XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
DEBUG StatusConsoleListener PluginManager 'Core' found 131 plugins
DEBUG StatusConsoleListener PluginManager 'Level' found 0 plugins
DEBUG StatusConsoleListener PluginManager 'Lookup' found 16 plugins
DEBUG StatusConsoleListener Building Plugin[name=layout, 
class=org.apache.logging.log4j.core.layout.PatternLayout].
DEBUG StatusConsoleListener PatternLayout$Builder(pattern="%d{HH:mm:ss.SSS} 
[%t] %highlight{[%level]}{FATAL=red blink, ERROR=red bold, WARN=yellow bold, 
INFO=magenta bold, DEBUG=green bold, TRACE=blue bold} %logger{36} - %msg%n", 
PatternSelector=null, 
Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
 Replace=null, charset="null", alwaysWriteExceptions="null", 
disableAnsi="false", noConsoleNoAnsi="null", header="null", footer="null")
DEBUG StatusConsoleListener PluginManager 'Converter' found 45 plugins
DEBUG StatusConsoleListener Building Plugin[name=appender, 
class=org.apache.logging.log4j.core.appender.ConsoleAppender].
DEBUG StatusConsoleListener ConsoleAppender$Builder(target="SYSTEM_OUT", 
follow="null", direct="null", bufferedIo="null", bufferSize="null", 
immediateFlush="null", ignoreExceptions="null", PatternLayout(%d{HH:mm:ss.SSS} 
[%t] %highlight{[%level]}{FATAL=red blink, ERROR=red bold, WARN=yellow bold, 
INFO=magenta bold, DEBUG=green bold, TRACE=blue bold} %logger{36} - %msg%n), 
name="Console", 
Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
 Filter=null, ={})
DEBUG StatusConsoleListener Starting OutputStreamManager SYSTEM_OUT.false.false
DEBUG StatusConsoleListener Building Plugin[name=layout, 
class=org.apache.logging.log4j.core.layout.PatternLayout].
DEBUG StatusConsoleListener PatternLayout$Builder(pattern="%d{yyyy-MM-dd 
HH:mm:ss.SSS} %highlight{[%level]}{FATAL=bright_red bold, ERROR=red bold, 
WARN=yellow bold, INFO=blue bold, DEBUG=green bold, TRACE=magenta bold} [%t] 
%logger{36} - %msg%n", PatternSelector=null, 
Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
 Replace=null, charset="null", alwaysWriteExceptions="null", 
disableAnsi="false", noConsoleNoAnsi="null", header="null", footer="null")
DEBUG StatusConsoleListener Building Plugin[name=appender, 
class=org.apache.logging.log4j.core.appender.FileAppender].
DEBUG StatusConsoleListener 
FileAppender$Builder(fileName="/home/pavel/Temp/mavenproject10.log", 
append="false", locking="null", advertise="null", advertiseUri="null", 
createOnDemand="null", filePermissions="null", fileOwner="null", 
fileGroup="null", bufferedIo="null", bufferSize="null", immediateFlush="true", 
ignoreExceptions="null", PatternLayout(%d{yyyy-MM-dd HH:mm:ss.SSS} 
%highlight{[%level]}{FATAL=bright_red bold, ERROR=red bold, WARN=yellow bold, 
INFO=blue bold, DEBUG=green bold, TRACE=magenta bold} [%t] %logger{36} - 
%msg%n), name="File", 
Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
 Filter=null, ={})
DEBUG StatusConsoleListener Starting FileManager 
/home/pavel/Temp/mavenproject10.log
DEBUG StatusConsoleListener Building Plugin[name=appenders, 
class=org.apache.logging.log4j.core.config.AppendersPlugin].
DEBUG StatusConsoleListener createAppenders(={Console, File})
DEBUG StatusConsoleListener Building Plugin[name=AppenderRef, 
class=org.apache.logging.log4j.core.config.AppenderRef].
DEBUG StatusConsoleListener createAppenderRef(ref="File", level="null", 
Filter=null)
DEBUG StatusConsoleListener Building Plugin[name=AppenderRef, 
class=org.apache.logging.log4j.core.config.AppenderRef].
DEBUG StatusConsoleListener createAppenderRef(ref="Console", level="null", 
Filter=null)
DEBUG StatusConsoleListener Building Plugin[name=root, 
class=org.apache.logging.log4j.core.config.LoggerConfig$RootLogger].
DEBUG StatusConsoleListener LoggerConfig$RootLogger$Builder(additivity="null", 
level="DEBUG", levelAndRefs="null", includeLocation="null", ={File, Console}, 
={}, 
Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
 Filter=null)
DEBUG StatusConsoleListener Building Plugin[name=loggers, 
class=org.apache.logging.log4j.core.config.LoggersPlugin].
DEBUG StatusConsoleListener createLoggers(={root})
DEBUG StatusConsoleListener Configuration 
XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
 initialized
DEBUG StatusConsoleListener Starting configuration 
XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
DEBUG StatusConsoleListener Started configuration 
XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
 OK.
TRACE StatusConsoleListener Stopping 
org.apache.logging.log4j.core.config.DefaultConfiguration@2ed2d9cb...
TRACE StatusConsoleListener DefaultConfiguration notified 1 
ReliabilityStrategies that config will be stopped.
TRACE StatusConsoleListener DefaultConfiguration stopping root LoggerConfig.
TRACE StatusConsoleListener DefaultConfiguration notifying 
ReliabilityStrategies that appenders will be stopped.
TRACE StatusConsoleListener DefaultConfiguration stopping remaining Appenders.
DEBUG StatusConsoleListener Shutting down OutputStreamManager 
SYSTEM_OUT.false.false-2
DEBUG StatusConsoleListener OutputStream closed
DEBUG StatusConsoleListener Shut down OutputStreamManager 
SYSTEM_OUT.false.false-2, all resources released: true
DEBUG StatusConsoleListener Appender DefaultConsole-2 stopped with status true
TRACE StatusConsoleListener DefaultConfiguration stopped 1 remaining Appenders.
TRACE StatusConsoleListener DefaultConfiguration cleaning Appenders from 1 
LoggerConfigs.
DEBUG StatusConsoleListener Stopped 
org.apache.logging.log4j.core.config.DefaultConfiguration@2ed2d9cb OK
TRACE StatusConsoleListener Reregistering MBeans after reconfigure. 
Selector=org.apache.logging.log4j.core.selector.ClassLoaderContextSelector@1e683a3e
TRACE StatusConsoleListener Reregistering context (1/1): '4f2410ac' 
org.apache.logging.log4j.core.LoggerContext@d5b810e
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=StatusLogger'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=ContextSelector'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=*'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=*'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=AsyncAppenders,name=*'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=AsyncLoggerRingBuffer'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=*,subtype=RingBuffer'
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac,component=StatusLogger
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac,component=ContextSelector
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=Console
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=File
TRACE StatusConsoleListener Using DummyNanoClock for nanosecond timestamps.
DEBUG StatusConsoleListener Reconfiguration complete for context[name=4f2410ac] 
at URI jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml 
(org.apache.logging.log4j.core.LoggerContext@d5b810e) with optional 
ClassLoader: null
DEBUG StatusConsoleListener LoggerContext[name=4f2410ac, 
org.apache.logging.log4j.core.LoggerContext@d5b810e] started OK.
FINE: Runtime.exit() called with status: 0 [Mon Nov 20 02:22:40 EET 2023]
{code}

Please, note the following piece:

{code:java}
DEBUG StatusConsoleListener Shutting down FileManager 
/home/pavel/Temp/mavenproject10.log
DEBUG StatusConsoleListener OutputStream closed
DEBUG StatusConsoleListener Shut down FileManager 
/home/pavel/Temp/mavenproject10.log, all resources released: true
DEBUG StatusConsoleListener Appender File stopped with status true
DEBUG StatusConsoleListener Shutting down OutputStreamManager 
SYSTEM_OUT.false.false
DEBUG StatusConsoleListener OutputStream closed
DEBUG StatusConsoleListener Shut down OutputStreamManager 
SYSTEM_OUT.false.false, all resources released: true
DEBUG StatusConsoleListener Appender Console stopped with status true
TRACE StatusConsoleListener XmlConfiguration stopped 2 remaining Appenders.
TRACE StatusConsoleListener XmlConfiguration cleaning Appenders from 2 
LoggerConfigs.
DEBUG StatusConsoleListener Stopped 
XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
 OK
DEBUG StatusConsoleListener Stopped LoggerContext[name=4f2410ac, 
org.apache.logging.log4j.core.LoggerContext@7f3b84b8] with status true
TRACE StatusConsoleListener Call to LogManager.getLogger(java.lang.Runtime)
DEBUG StatusConsoleListener PluginManager 'Lookup' found 16 plugins
DEBUG StatusConsoleListener PluginManager 'Converter' found 45 plugins
DEBUG StatusConsoleListener Starting OutputStreamManager 
SYSTEM_OUT.false.false-2
DEBUG StatusConsoleListener Starting LoggerContext[name=4f2410ac, 
org.apache.logging.log4j.core.LoggerContext@d5b810e]...
DEBUG StatusConsoleListener Reconfiguration started for context[name=4f2410ac] 
at URI null (org.apache.logging.log4j.core.LoggerContext@d5b810e) with optional 
ClassLoader: null
DEBUG StatusConsoleListener Using configurationFactory 
org.apache.logging.log4j.core.config.ConfigurationFactory$Factory@43dac38f

{code}

As you see log4j2 closes log file but later it starts it again. In the result 
log file length is 0 - it is empty. The reason of the problem shows this stack:


{code:java}
LoggerContext.reconfigure:688   
LoggerContext.reconfigure:711   
LoggerContext.start:253 
Log4jContextFactory.getContext:155      
Log4jContextFactory.getContext:47       
LogManager.getContext:196       
AbstractLoggerAdapter.getContext:137    
Hidden Source Calls     
AbstractLoggerAdapter.getLogger:47      
Hidden Source Calls     
LogManager.getLogger:95 
LogManager.demandSystemLogger:574       
LogManager$LoggingProviderAccess.demandLoggerFor:2727   
LoggingProviderImpl.demandJULLoggerFor:412      
LoggingProviderImpl.demandLoggerFor:438 
DefaultLoggerFinder.getLogger:159       
LazyLoggers.getLoggerFromFinder:391     
LazyLoggers.getLazyLogger:446   
LazyLoggers.getLogger:416       
System.getLogger:1822   
Shutdown.logRuntimeExit:177     
Shutdown.exit:160       
Runtime.exit:188        
System.exit:1916

{code}



  was:
The problem occurs when Log4j2 is used with JUL + when it is necessary to use 
shutdownHook in an application. So, this is java code:


{code:java}
import java.io.IOException;
import java.io.InputStream;
import java.util.logging.Level;
import java.util.logging.LogManager;
import java.util.logging.Logger;

public class Mavenproject10 {

    static {
        try (InputStream is = Mavenproject10.class.getClassLoader().
                getResourceAsStream("logging.properties")) {
            LogManager.getLogManager().readConfiguration(is);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    private static final Logger logger = 
Logger.getLogger(Mavenproject10.class.getName());

    public static void main(String[] args) {
        org.apache.logging.log4j.jul.LogManager weNeedThisClass = null;
        logger.log(Level.SEVERE, "That is very bad");
        org.apache.logging.log4j.LogManager.shutdown();
        System.exit(0);
    }
}
{code}

This is logging.properties:

{code:java}
handlers= java.util.logging.ConsoleHandler
.level= ALL
java.util.logging.ConsoleHandler.level = ALL
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
java.util.logging.SimpleFormatter.format=%4$s: %5$s [%1$tc]%n
{code}

This is log4j2.xml:

{code:java}
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="trace" shutdownHook="disable">
    <Appenders>
        <Console name="Console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] 
%highlight{[%level]}{FATAL=red blink, ERROR=red bold, WARN=yellow bold, 
INFO=magenta bold, DEBUG=green bold, TRACE=blue bold} %logger{36} - %msg%n" 
disableAnsi="false"/>
        </Console>
        <File name="File" fileName="/home/pavel/Temp/mavenproject10.log" 
immediateFlush="true" append="false">
            <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} 
%highlight{[%level]}{FATAL=bright_red bold, ERROR=red bold, WARN=yellow bold, 
INFO=blue bold, DEBUG=green bold, TRACE=magenta bold} [%t] %logger{36} - 
%msg%n" disableAnsi="false"/>
        </File>
    </Appenders>

    <Loggers>
        <Root level="debug">
            <AppenderRef ref="File"/>
            <AppenderRef ref="Console"/>
        </Root>
    </Loggers>
</Configuration>
{code}

This is how we run program:

{code:java}
java -Djava.util.logging.manager=org.apache.logging.log4j.jul.LogManager -jar 
mavenproject10-1.0.0.jar
{code}

This is the output:

{code:java}
DEBUG StatusConsoleListener null null initializing configuration 
XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
DEBUG StatusConsoleListener PluginManager 'Core' found 131 plugins
DEBUG StatusConsoleListener PluginManager 'Level' found 0 plugins
DEBUG StatusConsoleListener PluginManager 'Lookup' found 16 plugins
DEBUG StatusConsoleListener Building Plugin[name=layout, 
class=org.apache.logging.log4j.core.layout.PatternLayout].
TRACE StatusConsoleListener TypeConverterRegistry initializing.
DEBUG StatusConsoleListener PluginManager 'TypeConverter' found 26 plugins
DEBUG StatusConsoleListener PatternLayout$Builder(pattern="%d{HH:mm:ss.SSS} 
[%t] %highlight{[%level]}{FATAL=red blink, ERROR=red bold, WARN=yellow bold, 
INFO=magenta bold, DEBUG=green bold, TRACE=blue bold} %logger{36} - %msg%n", 
PatternSelector=null, 
Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
 Replace=null, charset="null", alwaysWriteExceptions="null", 
disableAnsi="false", noConsoleNoAnsi="null", header="null", footer="null")
DEBUG StatusConsoleListener PluginManager 'Converter' found 45 plugins
DEBUG StatusConsoleListener Building Plugin[name=appender, 
class=org.apache.logging.log4j.core.appender.ConsoleAppender].
DEBUG StatusConsoleListener ConsoleAppender$Builder(target="SYSTEM_OUT", 
follow="null", direct="null", bufferedIo="null", bufferSize="null", 
immediateFlush="null", ignoreExceptions="null", PatternLayout(%d{HH:mm:ss.SSS} 
[%t] %highlight{[%level]}{FATAL=red blink, ERROR=red bold, WARN=yellow bold, 
INFO=magenta bold, DEBUG=green bold, TRACE=blue bold} %logger{36} - %msg%n), 
name="Console", 
Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
 Filter=null, ={})
DEBUG StatusConsoleListener Starting OutputStreamManager SYSTEM_OUT.false.false
DEBUG StatusConsoleListener Building Plugin[name=layout, 
class=org.apache.logging.log4j.core.layout.PatternLayout].
DEBUG StatusConsoleListener PatternLayout$Builder(pattern="%d{yyyy-MM-dd 
HH:mm:ss.SSS} %highlight{[%level]}{FATAL=bright_red bold, ERROR=red bold, 
WARN=yellow bold, INFO=blue bold, DEBUG=green bold, TRACE=magenta bold} [%t] 
%logger{36} - %msg%n", PatternSelector=null, 
Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
 Replace=null, charset="null", alwaysWriteExceptions="null", 
disableAnsi="false", noConsoleNoAnsi="null", header="null", footer="null")
DEBUG StatusConsoleListener Building Plugin[name=appender, 
class=org.apache.logging.log4j.core.appender.FileAppender].
DEBUG StatusConsoleListener 
FileAppender$Builder(fileName="/home/pavel/Temp/mavenproject10.log", 
append="false", locking="null", advertise="null", advertiseUri="null", 
createOnDemand="null", filePermissions="null", fileOwner="null", 
fileGroup="null", bufferedIo="null", bufferSize="null", immediateFlush="true", 
ignoreExceptions="null", PatternLayout(%d{yyyy-MM-dd HH:mm:ss.SSS} 
%highlight{[%level]}{FATAL=bright_red bold, ERROR=red bold, WARN=yellow bold, 
INFO=blue bold, DEBUG=green bold, TRACE=magenta bold} [%t] %logger{36} - 
%msg%n), name="File", 
Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
 Filter=null, ={})
DEBUG StatusConsoleListener Starting FileManager 
/home/pavel/Temp/mavenproject10.log
DEBUG StatusConsoleListener Building Plugin[name=appenders, 
class=org.apache.logging.log4j.core.config.AppendersPlugin].
DEBUG StatusConsoleListener createAppenders(={Console, File})
DEBUG StatusConsoleListener Building Plugin[name=AppenderRef, 
class=org.apache.logging.log4j.core.config.AppenderRef].
DEBUG StatusConsoleListener createAppenderRef(ref="File", level="null", 
Filter=null)
DEBUG StatusConsoleListener Building Plugin[name=AppenderRef, 
class=org.apache.logging.log4j.core.config.AppenderRef].
DEBUG StatusConsoleListener createAppenderRef(ref="Console", level="null", 
Filter=null)
DEBUG StatusConsoleListener Building Plugin[name=root, 
class=org.apache.logging.log4j.core.config.LoggerConfig$RootLogger].
DEBUG StatusConsoleListener LoggerConfig$RootLogger$Builder(additivity="null", 
level="DEBUG", levelAndRefs="null", includeLocation="null", ={File, Console}, 
={}, 
Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
 Filter=null)
DEBUG StatusConsoleListener Building Plugin[name=loggers, 
class=org.apache.logging.log4j.core.config.LoggersPlugin].
DEBUG StatusConsoleListener createLoggers(={root})
DEBUG StatusConsoleListener Configuration 
XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
 initialized
DEBUG StatusConsoleListener Starting configuration 
XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
DEBUG StatusConsoleListener Started configuration 
XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
 OK.
TRACE StatusConsoleListener Stopping 
org.apache.logging.log4j.core.config.DefaultConfiguration@cb51256...
TRACE StatusConsoleListener DefaultConfiguration notified 1 
ReliabilityStrategies that config will be stopped.
TRACE StatusConsoleListener DefaultConfiguration stopping root LoggerConfig.
TRACE StatusConsoleListener DefaultConfiguration notifying 
ReliabilityStrategies that appenders will be stopped.
TRACE StatusConsoleListener DefaultConfiguration stopping remaining Appenders.
DEBUG StatusConsoleListener Shutting down OutputStreamManager 
SYSTEM_OUT.false.false-1
DEBUG StatusConsoleListener OutputStream closed
DEBUG StatusConsoleListener Shut down OutputStreamManager 
SYSTEM_OUT.false.false-1, all resources released: true
DEBUG StatusConsoleListener Appender DefaultConsole-1 stopped with status true
TRACE StatusConsoleListener DefaultConfiguration stopped 1 remaining Appenders.
TRACE StatusConsoleListener DefaultConfiguration cleaning Appenders from 1 
LoggerConfigs.
DEBUG StatusConsoleListener Stopped 
org.apache.logging.log4j.core.config.DefaultConfiguration@cb51256 OK
TRACE StatusConsoleListener Call to LogManager.getLogger(javax.management)
TRACE StatusConsoleListener Call to 
LogManager.getLogger(javax.management.mbeanserver)
TRACE StatusConsoleListener Call to LogManager.getLogger(javax.management.mlet)
TRACE StatusConsoleListener Call to 
LogManager.getLogger(javax.management.monitor)
TRACE StatusConsoleListener Call to LogManager.getLogger(javax.management.timer)
TRACE StatusConsoleListener Call to 
LogManager.getLogger(javax.management.notification)
TRACE StatusConsoleListener Call to 
LogManager.getLogger(javax.management.relation)
TRACE StatusConsoleListener Call to 
LogManager.getLogger(javax.management.modelmbean)
TRACE StatusConsoleListener Call to LogManager.getLogger(javax.management.misc)
TRACE StatusConsoleListener Reregistering MBeans after reconfigure. 
Selector=org.apache.logging.log4j.core.selector.ClassLoaderContextSelector@1e683a3e
TRACE StatusConsoleListener Reregistering context (1/1): '4f2410ac' 
org.apache.logging.log4j.core.LoggerContext@7f3b84b8
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=StatusLogger'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=ContextSelector'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=*'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=*'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=AsyncAppenders,name=*'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=AsyncLoggerRingBuffer'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=*,subtype=RingBuffer'
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac,component=StatusLogger
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac,component=ContextSelector
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=Console
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=File
TRACE StatusConsoleListener Using default SystemClock for timestamps.
DEBUG StatusConsoleListener org.apache.logging.log4j.core.util.SystemClock 
supports precise timestamps.
TRACE StatusConsoleListener Using DummyNanoClock for nanosecond timestamps.
DEBUG StatusConsoleListener Reconfiguration complete for context[name=4f2410ac] 
at URI jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml 
(org.apache.logging.log4j.core.LoggerContext@7f3b84b8) with optional 
ClassLoader: null
DEBUG StatusConsoleListener LoggerContext[name=4f2410ac, 
org.apache.logging.log4j.core.LoggerContext@7f3b84b8] started OK.
02:22:40.245 [main] [ERROR] com.foo.mavenproject10.Mavenproject10 - That is 
very bad
DEBUG StatusConsoleListener Stopping LoggerContext[name=4f2410ac, 
org.apache.logging.log4j.core.LoggerContext@7f3b84b8]...
TRACE StatusConsoleListener Unregistering 1 MBeans: 
[org.apache.logging.log4j2:type=4f2410ac]
TRACE StatusConsoleListener Unregistering 1 MBeans: 
[org.apache.logging.log4j2:type=4f2410ac,component=StatusLogger]
TRACE StatusConsoleListener Unregistering 1 MBeans: 
[org.apache.logging.log4j2:type=4f2410ac,component=ContextSelector]
TRACE StatusConsoleListener Unregistering 1 MBeans: 
[org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=]
TRACE StatusConsoleListener Unregistering 2 MBeans: 
[org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=Console, 
org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=File]
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=AsyncAppenders,name=*'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=AsyncLoggerRingBuffer'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=*,subtype=RingBuffer'
TRACE StatusConsoleListener Stopping 
XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]...
TRACE StatusConsoleListener XmlConfiguration notified 2 ReliabilityStrategies 
that config will be stopped.
TRACE StatusConsoleListener XmlConfiguration stopping 1 LoggerConfigs.
TRACE StatusConsoleListener XmlConfiguration stopping root LoggerConfig.
TRACE StatusConsoleListener XmlConfiguration notifying ReliabilityStrategies 
that appenders will be stopped.
TRACE StatusConsoleListener XmlConfiguration stopping remaining Appenders.
DEBUG StatusConsoleListener Shutting down FileManager 
/home/pavel/Temp/mavenproject10.log
DEBUG StatusConsoleListener OutputStream closed
DEBUG StatusConsoleListener Shut down FileManager 
/home/pavel/Temp/mavenproject10.log, all resources released: true
DEBUG StatusConsoleListener Appender File stopped with status true
DEBUG StatusConsoleListener Shutting down OutputStreamManager 
SYSTEM_OUT.false.false
DEBUG StatusConsoleListener OutputStream closed
DEBUG StatusConsoleListener Shut down OutputStreamManager 
SYSTEM_OUT.false.false, all resources released: true
DEBUG StatusConsoleListener Appender Console stopped with status true
TRACE StatusConsoleListener XmlConfiguration stopped 2 remaining Appenders.
TRACE StatusConsoleListener XmlConfiguration cleaning Appenders from 2 
LoggerConfigs.
DEBUG StatusConsoleListener Stopped 
XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
 OK
DEBUG StatusConsoleListener Stopped LoggerContext[name=4f2410ac, 
org.apache.logging.log4j.core.LoggerContext@7f3b84b8] with status true
TRACE StatusConsoleListener Call to LogManager.getLogger(java.lang.Runtime)
DEBUG StatusConsoleListener PluginManager 'Lookup' found 16 plugins
DEBUG StatusConsoleListener PluginManager 'Converter' found 45 plugins
DEBUG StatusConsoleListener Starting OutputStreamManager 
SYSTEM_OUT.false.false-2
DEBUG StatusConsoleListener Starting LoggerContext[name=4f2410ac, 
org.apache.logging.log4j.core.LoggerContext@d5b810e]...
DEBUG StatusConsoleListener Reconfiguration started for context[name=4f2410ac] 
at URI null (org.apache.logging.log4j.core.LoggerContext@d5b810e) with optional 
ClassLoader: null
DEBUG StatusConsoleListener Using configurationFactory 
org.apache.logging.log4j.core.config.ConfigurationFactory$Factory@43dac38f
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.properties] 
using context class loader 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.properties] 
using jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.properties] 
using jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.properties] 
using ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yml] using 
context class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yml] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yaml] using 
context class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yaml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yaml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yaml] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.json] using 
context class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.json] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.json] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.json] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.jsn] using 
context class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.jsn] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.jsn] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.jsn] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.xml] using 
context class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.xml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.xml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.xml] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2-test.properties] using 
context class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test.properties] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.properties] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.properties] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2-test.yml] using context 
class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test.yml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.yml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.yml] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2-test.yaml] using context 
class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test.yaml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.yaml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.yaml] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2-test.json] using context 
class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test.json] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.json] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.json] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2-test.jsn] using context 
class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test.jsn] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.jsn] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.jsn] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2-test.xml] using context 
class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2-test.xml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.xml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2-test.xml] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.properties] using 
context class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.properties] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.properties] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.properties] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yml] using context 
class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yml] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yaml] using context 
class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yaml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yaml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yaml] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.json] using context 
class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.json] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.json] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.json] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.jsn] using context 
class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.jsn] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.jsn] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.jsn] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.xml] using context 
class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.xml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.xml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j24f2410ac.xml] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2.properties] using context 
class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2.properties] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2.properties] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2.properties] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2.yml] using context class 
loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2.yml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2.yml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2.yml] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2.yaml] using context class 
loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2.yaml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2.yaml] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2.yaml] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2.json] using context class 
loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2.json] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2.json] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2.json] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2.jsn] using context class 
loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
TRACE StatusConsoleListener Trying to find [log4j2.jsn] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2.jsn] using 
jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
TRACE StatusConsoleListener Trying to find [log4j2.jsn] using 
ClassLoader.getSystemResource().
TRACE StatusConsoleListener Trying to find [log4j2.xml] using context class 
loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
DEBUG StatusConsoleListener uri does not represent a local file: 
jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml
DEBUG StatusConsoleListener PluginManager 'Lookup' found 16 plugins
DEBUG StatusConsoleListener Closing JarURLInputStream 
sun.net.www.protocol.jar.JarURLConnection$JarURLInputStream@54bff557
DEBUG StatusConsoleListener null null initializing configuration 
XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
DEBUG StatusConsoleListener PluginManager 'Core' found 131 plugins
DEBUG StatusConsoleListener PluginManager 'Level' found 0 plugins
DEBUG StatusConsoleListener PluginManager 'Lookup' found 16 plugins
DEBUG StatusConsoleListener Building Plugin[name=layout, 
class=org.apache.logging.log4j.core.layout.PatternLayout].
DEBUG StatusConsoleListener PatternLayout$Builder(pattern="%d{HH:mm:ss.SSS} 
[%t] %highlight{[%level]}{FATAL=red blink, ERROR=red bold, WARN=yellow bold, 
INFO=magenta bold, DEBUG=green bold, TRACE=blue bold} %logger{36} - %msg%n", 
PatternSelector=null, 
Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
 Replace=null, charset="null", alwaysWriteExceptions="null", 
disableAnsi="false", noConsoleNoAnsi="null", header="null", footer="null")
DEBUG StatusConsoleListener PluginManager 'Converter' found 45 plugins
DEBUG StatusConsoleListener Building Plugin[name=appender, 
class=org.apache.logging.log4j.core.appender.ConsoleAppender].
DEBUG StatusConsoleListener ConsoleAppender$Builder(target="SYSTEM_OUT", 
follow="null", direct="null", bufferedIo="null", bufferSize="null", 
immediateFlush="null", ignoreExceptions="null", PatternLayout(%d{HH:mm:ss.SSS} 
[%t] %highlight{[%level]}{FATAL=red blink, ERROR=red bold, WARN=yellow bold, 
INFO=magenta bold, DEBUG=green bold, TRACE=blue bold} %logger{36} - %msg%n), 
name="Console", 
Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
 Filter=null, ={})
DEBUG StatusConsoleListener Starting OutputStreamManager SYSTEM_OUT.false.false
DEBUG StatusConsoleListener Building Plugin[name=layout, 
class=org.apache.logging.log4j.core.layout.PatternLayout].
DEBUG StatusConsoleListener PatternLayout$Builder(pattern="%d{yyyy-MM-dd 
HH:mm:ss.SSS} %highlight{[%level]}{FATAL=bright_red bold, ERROR=red bold, 
WARN=yellow bold, INFO=blue bold, DEBUG=green bold, TRACE=magenta bold} [%t] 
%logger{36} - %msg%n", PatternSelector=null, 
Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
 Replace=null, charset="null", alwaysWriteExceptions="null", 
disableAnsi="false", noConsoleNoAnsi="null", header="null", footer="null")
DEBUG StatusConsoleListener Building Plugin[name=appender, 
class=org.apache.logging.log4j.core.appender.FileAppender].
DEBUG StatusConsoleListener 
FileAppender$Builder(fileName="/home/pavel/Temp/mavenproject10.log", 
append="false", locking="null", advertise="null", advertiseUri="null", 
createOnDemand="null", filePermissions="null", fileOwner="null", 
fileGroup="null", bufferedIo="null", bufferSize="null", immediateFlush="true", 
ignoreExceptions="null", PatternLayout(%d{yyyy-MM-dd HH:mm:ss.SSS} 
%highlight{[%level]}{FATAL=bright_red bold, ERROR=red bold, WARN=yellow bold, 
INFO=blue bold, DEBUG=green bold, TRACE=magenta bold} [%t] %logger{36} - 
%msg%n), name="File", 
Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
 Filter=null, ={})
DEBUG StatusConsoleListener Starting FileManager 
/home/pavel/Temp/mavenproject10.log
DEBUG StatusConsoleListener Building Plugin[name=appenders, 
class=org.apache.logging.log4j.core.config.AppendersPlugin].
DEBUG StatusConsoleListener createAppenders(={Console, File})
DEBUG StatusConsoleListener Building Plugin[name=AppenderRef, 
class=org.apache.logging.log4j.core.config.AppenderRef].
DEBUG StatusConsoleListener createAppenderRef(ref="File", level="null", 
Filter=null)
DEBUG StatusConsoleListener Building Plugin[name=AppenderRef, 
class=org.apache.logging.log4j.core.config.AppenderRef].
DEBUG StatusConsoleListener createAppenderRef(ref="Console", level="null", 
Filter=null)
DEBUG StatusConsoleListener Building Plugin[name=root, 
class=org.apache.logging.log4j.core.config.LoggerConfig$RootLogger].
DEBUG StatusConsoleListener LoggerConfig$RootLogger$Builder(additivity="null", 
level="DEBUG", levelAndRefs="null", includeLocation="null", ={File, Console}, 
={}, 
Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
 Filter=null)
DEBUG StatusConsoleListener Building Plugin[name=loggers, 
class=org.apache.logging.log4j.core.config.LoggersPlugin].
DEBUG StatusConsoleListener createLoggers(={root})
DEBUG StatusConsoleListener Configuration 
XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
 initialized
DEBUG StatusConsoleListener Starting configuration 
XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
DEBUG StatusConsoleListener Started configuration 
XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
 OK.
TRACE StatusConsoleListener Stopping 
org.apache.logging.log4j.core.config.DefaultConfiguration@2ed2d9cb...
TRACE StatusConsoleListener DefaultConfiguration notified 1 
ReliabilityStrategies that config will be stopped.
TRACE StatusConsoleListener DefaultConfiguration stopping root LoggerConfig.
TRACE StatusConsoleListener DefaultConfiguration notifying 
ReliabilityStrategies that appenders will be stopped.
TRACE StatusConsoleListener DefaultConfiguration stopping remaining Appenders.
DEBUG StatusConsoleListener Shutting down OutputStreamManager 
SYSTEM_OUT.false.false-2
DEBUG StatusConsoleListener OutputStream closed
DEBUG StatusConsoleListener Shut down OutputStreamManager 
SYSTEM_OUT.false.false-2, all resources released: true
DEBUG StatusConsoleListener Appender DefaultConsole-2 stopped with status true
TRACE StatusConsoleListener DefaultConfiguration stopped 1 remaining Appenders.
TRACE StatusConsoleListener DefaultConfiguration cleaning Appenders from 1 
LoggerConfigs.
DEBUG StatusConsoleListener Stopped 
org.apache.logging.log4j.core.config.DefaultConfiguration@2ed2d9cb OK
TRACE StatusConsoleListener Reregistering MBeans after reconfigure. 
Selector=org.apache.logging.log4j.core.selector.ClassLoaderContextSelector@1e683a3e
TRACE StatusConsoleListener Reregistering context (1/1): '4f2410ac' 
org.apache.logging.log4j.core.LoggerContext@d5b810e
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=StatusLogger'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=ContextSelector'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=*'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=*'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=AsyncAppenders,name=*'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=AsyncLoggerRingBuffer'
TRACE StatusConsoleListener Unregistering but no MBeans found matching 
'org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=*,subtype=RingBuffer'
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac,component=StatusLogger
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac,component=ContextSelector
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=Console
DEBUG StatusConsoleListener Registering MBean 
org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=File
TRACE StatusConsoleListener Using DummyNanoClock for nanosecond timestamps.
DEBUG StatusConsoleListener Reconfiguration complete for context[name=4f2410ac] 
at URI jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml 
(org.apache.logging.log4j.core.LoggerContext@d5b810e) with optional 
ClassLoader: null
DEBUG StatusConsoleListener LoggerContext[name=4f2410ac, 
org.apache.logging.log4j.core.LoggerContext@d5b810e] started OK.
FINE: Runtime.exit() called with status: 0 [Mon Nov 20 02:22:40 EET 2023]
{code}

Please, note the following piece:

{code:java}
DEBUG StatusConsoleListener Shutting down FileManager 
/home/pavel/Temp/mavenproject10.log
DEBUG StatusConsoleListener OutputStream closed
DEBUG StatusConsoleListener Shut down FileManager 
/home/pavel/Temp/mavenproject10.log, all resources released: true
DEBUG StatusConsoleListener Appender File stopped with status true
DEBUG StatusConsoleListener Shutting down OutputStreamManager 
SYSTEM_OUT.false.false
DEBUG StatusConsoleListener OutputStream closed
DEBUG StatusConsoleListener Shut down OutputStreamManager 
SYSTEM_OUT.false.false, all resources released: true
DEBUG StatusConsoleListener Appender Console stopped with status true
TRACE StatusConsoleListener XmlConfiguration stopped 2 remaining Appenders.
TRACE StatusConsoleListener XmlConfiguration cleaning Appenders from 2 
LoggerConfigs.
DEBUG StatusConsoleListener Stopped 
XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
 OK
DEBUG StatusConsoleListener Stopped LoggerContext[name=4f2410ac, 
org.apache.logging.log4j.core.LoggerContext@7f3b84b8] with status true
TRACE StatusConsoleListener Call to LogManager.getLogger(java.lang.Runtime)
DEBUG StatusConsoleListener PluginManager 'Lookup' found 16 plugins
DEBUG StatusConsoleListener PluginManager 'Converter' found 45 plugins
DEBUG StatusConsoleListener Starting OutputStreamManager 
SYSTEM_OUT.false.false-2
DEBUG StatusConsoleListener Starting LoggerContext[name=4f2410ac, 
org.apache.logging.log4j.core.LoggerContext@d5b810e]...
DEBUG StatusConsoleListener Reconfiguration started for context[name=4f2410ac] 
at URI null (org.apache.logging.log4j.core.LoggerContext@d5b810e) with optional 
ClassLoader: null
DEBUG StatusConsoleListener Using configurationFactory 
org.apache.logging.log4j.core.config.ConfigurationFactory$Factory@43dac38f

{code}

As you see log4j2 closes log file but later it starts it again. In the result 
log file length is 0 - it is empty. The reason of the problem shows this stack:

LoggerContext.reconfigure:688   
LoggerContext.reconfigure:711   
LoggerContext.start:253 
Log4jContextFactory.getContext:155      
Log4jContextFactory.getContext:47       
LogManager.getContext:196       
AbstractLoggerAdapter.getContext:137    
Hidden Source Calls     
AbstractLoggerAdapter.getLogger:47      
Hidden Source Calls     
LogManager.getLogger:95 
LogManager.demandSystemLogger:574       
LogManager$LoggingProviderAccess.demandLoggerFor:2727   
LoggingProviderImpl.demandJULLoggerFor:412      
LoggingProviderImpl.demandLoggerFor:438 
DefaultLoggerFinder.getLogger:159       
LazyLoggers.getLoggerFromFinder:391     
LazyLoggers.getLazyLogger:446   
LazyLoggers.getLogger:416       
System.getLogger:1822   
Shutdown.logRuntimeExit:177     
Shutdown.exit:160       
Runtime.exit:188        
System.exit:1916




> Log4j2 starts again after LogManager.shutdown() 
> ------------------------------------------------
>
>                 Key: LOG4J2-3678
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-3678
>             Project: Log4j 2
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 2.21.1
>         Environment: Java: 21.0.1; OpenJDK 64-Bit Server VM 21.0.1+12-29
> Runtime: OpenJDK Runtime Environment 21.0.1+12-29
> System: Linux version 5.11.0-38-generic running on amd64; UTF-8; en_US (nb)
>            Reporter: Pavel_K
>            Priority: Major
>
> The problem occurs when Log4j2 is used with JUL + when it is necessary to use 
> shutdownHook in an application. So, this is java code:
> {code:java}
> import java.io.IOException;
> import java.io.InputStream;
> import java.util.logging.Level;
> import java.util.logging.LogManager;
> import java.util.logging.Logger;
> public class Mavenproject10 {
>     static {
>         try (InputStream is = Mavenproject10.class.getClassLoader().
>                 getResourceAsStream("logging.properties")) {
>             LogManager.getLogManager().readConfiguration(is);
>         } catch (IOException e) {
>             e.printStackTrace();
>         }
>     }
>     private static final Logger logger = 
> Logger.getLogger(Mavenproject10.class.getName());
>     public static void main(String[] args) {
>         org.apache.logging.log4j.jul.LogManager weNeedThisClass = null;
>         logger.log(Level.SEVERE, "That is very bad");
>         org.apache.logging.log4j.LogManager.shutdown();
>         System.exit(0);
>     }
> }
> {code}
> This is logging.properties:
> {code:java}
> handlers= java.util.logging.ConsoleHandler
> .level= ALL
> java.util.logging.ConsoleHandler.level = ALL
> java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
> java.util.logging.SimpleFormatter.format=%4$s: %5$s [%1$tc]%n
> {code}
> This is log4j2.xml:
> {code:java}
> <?xml version="1.0" encoding="UTF-8"?>
> <Configuration status="trace" shutdownHook="disable">
>     <Appenders>
>       <Console name="Console" target="SYSTEM_OUT">
>           <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] 
> %highlight{[%level]}{FATAL=red blink, ERROR=red bold, WARN=yellow bold, 
> INFO=magenta bold, DEBUG=green bold, TRACE=blue bold} %logger{36} - %msg%n" 
> disableAnsi="false"/>
>         </Console>
>         <File name="File" fileName="/home/pavel/Temp/mavenproject10.log" 
> immediateFlush="true" append="false">
>             <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} 
> %highlight{[%level]}{FATAL=bright_red bold, ERROR=red bold, WARN=yellow bold, 
> INFO=blue bold, DEBUG=green bold, TRACE=magenta bold} [%t] %logger{36} - 
> %msg%n" disableAnsi="false"/>
>         </File>
>     </Appenders>
>     <Loggers>
>         <Root level="debug">
>             <AppenderRef ref="File"/>
>             <AppenderRef ref="Console"/>
>         </Root>
>     </Loggers>
> </Configuration>
> {code}
> This is how we run program:
> {code:java}
> java -Djava.util.logging.manager=org.apache.logging.log4j.jul.LogManager -jar 
> mavenproject10-1.0.0.jar
> {code}
> This is the output:
> {code:java}
> DEBUG StatusConsoleListener null null initializing configuration 
> XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
> DEBUG StatusConsoleListener PluginManager 'Core' found 131 plugins
> DEBUG StatusConsoleListener PluginManager 'Level' found 0 plugins
> DEBUG StatusConsoleListener PluginManager 'Lookup' found 16 plugins
> DEBUG StatusConsoleListener Building Plugin[name=layout, 
> class=org.apache.logging.log4j.core.layout.PatternLayout].
> TRACE StatusConsoleListener TypeConverterRegistry initializing.
> DEBUG StatusConsoleListener PluginManager 'TypeConverter' found 26 plugins
> DEBUG StatusConsoleListener PatternLayout$Builder(pattern="%d{HH:mm:ss.SSS} 
> [%t] %highlight{[%level]}{FATAL=red blink, ERROR=red bold, WARN=yellow bold, 
> INFO=magenta bold, DEBUG=green bold, TRACE=blue bold} %logger{36} - %msg%n", 
> PatternSelector=null, 
> Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
>  Replace=null, charset="null", alwaysWriteExceptions="null", 
> disableAnsi="false", noConsoleNoAnsi="null", header="null", footer="null")
> DEBUG StatusConsoleListener PluginManager 'Converter' found 45 plugins
> DEBUG StatusConsoleListener Building Plugin[name=appender, 
> class=org.apache.logging.log4j.core.appender.ConsoleAppender].
> DEBUG StatusConsoleListener ConsoleAppender$Builder(target="SYSTEM_OUT", 
> follow="null", direct="null", bufferedIo="null", bufferSize="null", 
> immediateFlush="null", ignoreExceptions="null", 
> PatternLayout(%d{HH:mm:ss.SSS} [%t] %highlight{[%level]}{FATAL=red blink, 
> ERROR=red bold, WARN=yellow bold, INFO=magenta bold, DEBUG=green bold, 
> TRACE=blue bold} %logger{36} - %msg%n), name="Console", 
> Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
>  Filter=null, ={})
> DEBUG StatusConsoleListener Starting OutputStreamManager 
> SYSTEM_OUT.false.false
> DEBUG StatusConsoleListener Building Plugin[name=layout, 
> class=org.apache.logging.log4j.core.layout.PatternLayout].
> DEBUG StatusConsoleListener PatternLayout$Builder(pattern="%d{yyyy-MM-dd 
> HH:mm:ss.SSS} %highlight{[%level]}{FATAL=bright_red bold, ERROR=red bold, 
> WARN=yellow bold, INFO=blue bold, DEBUG=green bold, TRACE=magenta bold} [%t] 
> %logger{36} - %msg%n", PatternSelector=null, 
> Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
>  Replace=null, charset="null", alwaysWriteExceptions="null", 
> disableAnsi="false", noConsoleNoAnsi="null", header="null", footer="null")
> DEBUG StatusConsoleListener Building Plugin[name=appender, 
> class=org.apache.logging.log4j.core.appender.FileAppender].
> DEBUG StatusConsoleListener 
> FileAppender$Builder(fileName="/home/pavel/Temp/mavenproject10.log", 
> append="false", locking="null", advertise="null", advertiseUri="null", 
> createOnDemand="null", filePermissions="null", fileOwner="null", 
> fileGroup="null", bufferedIo="null", bufferSize="null", 
> immediateFlush="true", ignoreExceptions="null", PatternLayout(%d{yyyy-MM-dd 
> HH:mm:ss.SSS} %highlight{[%level]}{FATAL=bright_red bold, ERROR=red bold, 
> WARN=yellow bold, INFO=blue bold, DEBUG=green bold, TRACE=magenta bold} [%t] 
> %logger{36} - %msg%n), name="File", 
> Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
>  Filter=null, ={})
> DEBUG StatusConsoleListener Starting FileManager 
> /home/pavel/Temp/mavenproject10.log
> DEBUG StatusConsoleListener Building Plugin[name=appenders, 
> class=org.apache.logging.log4j.core.config.AppendersPlugin].
> DEBUG StatusConsoleListener createAppenders(={Console, File})
> DEBUG StatusConsoleListener Building Plugin[name=AppenderRef, 
> class=org.apache.logging.log4j.core.config.AppenderRef].
> DEBUG StatusConsoleListener createAppenderRef(ref="File", level="null", 
> Filter=null)
> DEBUG StatusConsoleListener Building Plugin[name=AppenderRef, 
> class=org.apache.logging.log4j.core.config.AppenderRef].
> DEBUG StatusConsoleListener createAppenderRef(ref="Console", level="null", 
> Filter=null)
> DEBUG StatusConsoleListener Building Plugin[name=root, 
> class=org.apache.logging.log4j.core.config.LoggerConfig$RootLogger].
> DEBUG StatusConsoleListener 
> LoggerConfig$RootLogger$Builder(additivity="null", level="DEBUG", 
> levelAndRefs="null", includeLocation="null", ={File, Console}, ={}, 
> Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
>  Filter=null)
> DEBUG StatusConsoleListener Building Plugin[name=loggers, 
> class=org.apache.logging.log4j.core.config.LoggersPlugin].
> DEBUG StatusConsoleListener createLoggers(={root})
> DEBUG StatusConsoleListener Configuration 
> XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
>  initialized
> DEBUG StatusConsoleListener Starting configuration 
> XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
> DEBUG StatusConsoleListener Started configuration 
> XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
>  OK.
> TRACE StatusConsoleListener Stopping 
> org.apache.logging.log4j.core.config.DefaultConfiguration@cb51256...
> TRACE StatusConsoleListener DefaultConfiguration notified 1 
> ReliabilityStrategies that config will be stopped.
> TRACE StatusConsoleListener DefaultConfiguration stopping root LoggerConfig.
> TRACE StatusConsoleListener DefaultConfiguration notifying 
> ReliabilityStrategies that appenders will be stopped.
> TRACE StatusConsoleListener DefaultConfiguration stopping remaining Appenders.
> DEBUG StatusConsoleListener Shutting down OutputStreamManager 
> SYSTEM_OUT.false.false-1
> DEBUG StatusConsoleListener OutputStream closed
> DEBUG StatusConsoleListener Shut down OutputStreamManager 
> SYSTEM_OUT.false.false-1, all resources released: true
> DEBUG StatusConsoleListener Appender DefaultConsole-1 stopped with status true
> TRACE StatusConsoleListener DefaultConfiguration stopped 1 remaining 
> Appenders.
> TRACE StatusConsoleListener DefaultConfiguration cleaning Appenders from 1 
> LoggerConfigs.
> DEBUG StatusConsoleListener Stopped 
> org.apache.logging.log4j.core.config.DefaultConfiguration@cb51256 OK
> TRACE StatusConsoleListener Call to LogManager.getLogger(javax.management)
> TRACE StatusConsoleListener Call to 
> LogManager.getLogger(javax.management.mbeanserver)
> TRACE StatusConsoleListener Call to 
> LogManager.getLogger(javax.management.mlet)
> TRACE StatusConsoleListener Call to 
> LogManager.getLogger(javax.management.monitor)
> TRACE StatusConsoleListener Call to 
> LogManager.getLogger(javax.management.timer)
> TRACE StatusConsoleListener Call to 
> LogManager.getLogger(javax.management.notification)
> TRACE StatusConsoleListener Call to 
> LogManager.getLogger(javax.management.relation)
> TRACE StatusConsoleListener Call to 
> LogManager.getLogger(javax.management.modelmbean)
> TRACE StatusConsoleListener Call to 
> LogManager.getLogger(javax.management.misc)
> TRACE StatusConsoleListener Reregistering MBeans after reconfigure. 
> Selector=org.apache.logging.log4j.core.selector.ClassLoaderContextSelector@1e683a3e
> TRACE StatusConsoleListener Reregistering context (1/1): '4f2410ac' 
> org.apache.logging.log4j.core.LoggerContext@7f3b84b8
> TRACE StatusConsoleListener Unregistering but no MBeans found matching 
> 'org.apache.logging.log4j2:type=4f2410ac'
> TRACE StatusConsoleListener Unregistering but no MBeans found matching 
> 'org.apache.logging.log4j2:type=4f2410ac,component=StatusLogger'
> TRACE StatusConsoleListener Unregistering but no MBeans found matching 
> 'org.apache.logging.log4j2:type=4f2410ac,component=ContextSelector'
> TRACE StatusConsoleListener Unregistering but no MBeans found matching 
> 'org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=*'
> TRACE StatusConsoleListener Unregistering but no MBeans found matching 
> 'org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=*'
> TRACE StatusConsoleListener Unregistering but no MBeans found matching 
> 'org.apache.logging.log4j2:type=4f2410ac,component=AsyncAppenders,name=*'
> TRACE StatusConsoleListener Unregistering but no MBeans found matching 
> 'org.apache.logging.log4j2:type=4f2410ac,component=AsyncLoggerRingBuffer'
> TRACE StatusConsoleListener Unregistering but no MBeans found matching 
> 'org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=*,subtype=RingBuffer'
> DEBUG StatusConsoleListener Registering MBean 
> org.apache.logging.log4j2:type=4f2410ac
> DEBUG StatusConsoleListener Registering MBean 
> org.apache.logging.log4j2:type=4f2410ac,component=StatusLogger
> DEBUG StatusConsoleListener Registering MBean 
> org.apache.logging.log4j2:type=4f2410ac,component=ContextSelector
> DEBUG StatusConsoleListener Registering MBean 
> org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=
> DEBUG StatusConsoleListener Registering MBean 
> org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=Console
> DEBUG StatusConsoleListener Registering MBean 
> org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=File
> TRACE StatusConsoleListener Using default SystemClock for timestamps.
> DEBUG StatusConsoleListener org.apache.logging.log4j.core.util.SystemClock 
> supports precise timestamps.
> TRACE StatusConsoleListener Using DummyNanoClock for nanosecond timestamps.
> DEBUG StatusConsoleListener Reconfiguration complete for 
> context[name=4f2410ac] at URI 
> jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml 
> (org.apache.logging.log4j.core.LoggerContext@7f3b84b8) with optional 
> ClassLoader: null
> DEBUG StatusConsoleListener LoggerContext[name=4f2410ac, 
> org.apache.logging.log4j.core.LoggerContext@7f3b84b8] started OK.
> 02:22:40.245 [main] [ERROR] com.foo.mavenproject10.Mavenproject10 - That is 
> very bad
> DEBUG StatusConsoleListener Stopping LoggerContext[name=4f2410ac, 
> org.apache.logging.log4j.core.LoggerContext@7f3b84b8]...
> TRACE StatusConsoleListener Unregistering 1 MBeans: 
> [org.apache.logging.log4j2:type=4f2410ac]
> TRACE StatusConsoleListener Unregistering 1 MBeans: 
> [org.apache.logging.log4j2:type=4f2410ac,component=StatusLogger]
> TRACE StatusConsoleListener Unregistering 1 MBeans: 
> [org.apache.logging.log4j2:type=4f2410ac,component=ContextSelector]
> TRACE StatusConsoleListener Unregistering 1 MBeans: 
> [org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=]
> TRACE StatusConsoleListener Unregistering 2 MBeans: 
> [org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=Console, 
> org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=File]
> TRACE StatusConsoleListener Unregistering but no MBeans found matching 
> 'org.apache.logging.log4j2:type=4f2410ac,component=AsyncAppenders,name=*'
> TRACE StatusConsoleListener Unregistering but no MBeans found matching 
> 'org.apache.logging.log4j2:type=4f2410ac,component=AsyncLoggerRingBuffer'
> TRACE StatusConsoleListener Unregistering but no MBeans found matching 
> 'org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=*,subtype=RingBuffer'
> TRACE StatusConsoleListener Stopping 
> XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]...
> TRACE StatusConsoleListener XmlConfiguration notified 2 ReliabilityStrategies 
> that config will be stopped.
> TRACE StatusConsoleListener XmlConfiguration stopping 1 LoggerConfigs.
> TRACE StatusConsoleListener XmlConfiguration stopping root LoggerConfig.
> TRACE StatusConsoleListener XmlConfiguration notifying ReliabilityStrategies 
> that appenders will be stopped.
> TRACE StatusConsoleListener XmlConfiguration stopping remaining Appenders.
> DEBUG StatusConsoleListener Shutting down FileManager 
> /home/pavel/Temp/mavenproject10.log
> DEBUG StatusConsoleListener OutputStream closed
> DEBUG StatusConsoleListener Shut down FileManager 
> /home/pavel/Temp/mavenproject10.log, all resources released: true
> DEBUG StatusConsoleListener Appender File stopped with status true
> DEBUG StatusConsoleListener Shutting down OutputStreamManager 
> SYSTEM_OUT.false.false
> DEBUG StatusConsoleListener OutputStream closed
> DEBUG StatusConsoleListener Shut down OutputStreamManager 
> SYSTEM_OUT.false.false, all resources released: true
> DEBUG StatusConsoleListener Appender Console stopped with status true
> TRACE StatusConsoleListener XmlConfiguration stopped 2 remaining Appenders.
> TRACE StatusConsoleListener XmlConfiguration cleaning Appenders from 2 
> LoggerConfigs.
> DEBUG StatusConsoleListener Stopped 
> XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
>  OK
> DEBUG StatusConsoleListener Stopped LoggerContext[name=4f2410ac, 
> org.apache.logging.log4j.core.LoggerContext@7f3b84b8] with status true
> TRACE StatusConsoleListener Call to LogManager.getLogger(java.lang.Runtime)
> DEBUG StatusConsoleListener PluginManager 'Lookup' found 16 plugins
> DEBUG StatusConsoleListener PluginManager 'Converter' found 45 plugins
> DEBUG StatusConsoleListener Starting OutputStreamManager 
> SYSTEM_OUT.false.false-2
> DEBUG StatusConsoleListener Starting LoggerContext[name=4f2410ac, 
> org.apache.logging.log4j.core.LoggerContext@d5b810e]...
> DEBUG StatusConsoleListener Reconfiguration started for 
> context[name=4f2410ac] at URI null 
> (org.apache.logging.log4j.core.LoggerContext@d5b810e) with optional 
> ClassLoader: null
> DEBUG StatusConsoleListener Using configurationFactory 
> org.apache.logging.log4j.core.config.ConfigurationFactory$Factory@43dac38f
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.properties] 
> using context class loader 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.properties] 
> using jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.properties] 
> using jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.properties] 
> using ClassLoader.getSystemResource().
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yml] using 
> context class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yml] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yml] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yml] using 
> ClassLoader.getSystemResource().
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yaml] using 
> context class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yaml] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yaml] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.yaml] using 
> ClassLoader.getSystemResource().
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.json] using 
> context class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.json] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.json] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.json] using 
> ClassLoader.getSystemResource().
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.jsn] using 
> context class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.jsn] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.jsn] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.jsn] using 
> ClassLoader.getSystemResource().
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.xml] using 
> context class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.xml] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.xml] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test4f2410ac.xml] using 
> ClassLoader.getSystemResource().
> TRACE StatusConsoleListener Trying to find [log4j2-test.properties] using 
> context class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> TRACE StatusConsoleListener Trying to find [log4j2-test.properties] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test.properties] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test.properties] using 
> ClassLoader.getSystemResource().
> TRACE StatusConsoleListener Trying to find [log4j2-test.yml] using context 
> class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> TRACE StatusConsoleListener Trying to find [log4j2-test.yml] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test.yml] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test.yml] using 
> ClassLoader.getSystemResource().
> TRACE StatusConsoleListener Trying to find [log4j2-test.yaml] using context 
> class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> TRACE StatusConsoleListener Trying to find [log4j2-test.yaml] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test.yaml] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test.yaml] using 
> ClassLoader.getSystemResource().
> TRACE StatusConsoleListener Trying to find [log4j2-test.json] using context 
> class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> TRACE StatusConsoleListener Trying to find [log4j2-test.json] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test.json] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test.json] using 
> ClassLoader.getSystemResource().
> TRACE StatusConsoleListener Trying to find [log4j2-test.jsn] using context 
> class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> TRACE StatusConsoleListener Trying to find [log4j2-test.jsn] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test.jsn] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test.jsn] using 
> ClassLoader.getSystemResource().
> TRACE StatusConsoleListener Trying to find [log4j2-test.xml] using context 
> class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> TRACE StatusConsoleListener Trying to find [log4j2-test.xml] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test.xml] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2-test.xml] using 
> ClassLoader.getSystemResource().
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.properties] using 
> context class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.properties] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.properties] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.properties] using 
> ClassLoader.getSystemResource().
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yml] using context 
> class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yml] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yml] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yml] using 
> ClassLoader.getSystemResource().
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yaml] using 
> context class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yaml] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yaml] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.yaml] using 
> ClassLoader.getSystemResource().
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.json] using 
> context class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.json] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.json] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.json] using 
> ClassLoader.getSystemResource().
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.jsn] using context 
> class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.jsn] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.jsn] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.jsn] using 
> ClassLoader.getSystemResource().
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.xml] using context 
> class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.xml] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.xml] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j24f2410ac.xml] using 
> ClassLoader.getSystemResource().
> TRACE StatusConsoleListener Trying to find [log4j2.properties] using context 
> class loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> TRACE StatusConsoleListener Trying to find [log4j2.properties] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2.properties] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2.properties] using 
> ClassLoader.getSystemResource().
> TRACE StatusConsoleListener Trying to find [log4j2.yml] using context class 
> loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> TRACE StatusConsoleListener Trying to find [log4j2.yml] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2.yml] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2.yml] using 
> ClassLoader.getSystemResource().
> TRACE StatusConsoleListener Trying to find [log4j2.yaml] using context class 
> loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> TRACE StatusConsoleListener Trying to find [log4j2.yaml] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2.yaml] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2.yaml] using 
> ClassLoader.getSystemResource().
> TRACE StatusConsoleListener Trying to find [log4j2.json] using context class 
> loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> TRACE StatusConsoleListener Trying to find [log4j2.json] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2.json] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2.json] using 
> ClassLoader.getSystemResource().
> TRACE StatusConsoleListener Trying to find [log4j2.jsn] using context class 
> loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> TRACE StatusConsoleListener Trying to find [log4j2.jsn] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2.jsn] using 
> jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac class loader.
> TRACE StatusConsoleListener Trying to find [log4j2.jsn] using 
> ClassLoader.getSystemResource().
> TRACE StatusConsoleListener Trying to find [log4j2.xml] using context class 
> loader jdk.internal.loader.ClassLoaders$AppClassLoader@4f2410ac.
> DEBUG StatusConsoleListener uri does not represent a local file: 
> jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml
> DEBUG StatusConsoleListener PluginManager 'Lookup' found 16 plugins
> DEBUG StatusConsoleListener Closing JarURLInputStream 
> sun.net.www.protocol.jar.JarURLConnection$JarURLInputStream@54bff557
> DEBUG StatusConsoleListener null null initializing configuration 
> XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
> DEBUG StatusConsoleListener PluginManager 'Core' found 131 plugins
> DEBUG StatusConsoleListener PluginManager 'Level' found 0 plugins
> DEBUG StatusConsoleListener PluginManager 'Lookup' found 16 plugins
> DEBUG StatusConsoleListener Building Plugin[name=layout, 
> class=org.apache.logging.log4j.core.layout.PatternLayout].
> DEBUG StatusConsoleListener PatternLayout$Builder(pattern="%d{HH:mm:ss.SSS} 
> [%t] %highlight{[%level]}{FATAL=red blink, ERROR=red bold, WARN=yellow bold, 
> INFO=magenta bold, DEBUG=green bold, TRACE=blue bold} %logger{36} - %msg%n", 
> PatternSelector=null, 
> Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
>  Replace=null, charset="null", alwaysWriteExceptions="null", 
> disableAnsi="false", noConsoleNoAnsi="null", header="null", footer="null")
> DEBUG StatusConsoleListener PluginManager 'Converter' found 45 plugins
> DEBUG StatusConsoleListener Building Plugin[name=appender, 
> class=org.apache.logging.log4j.core.appender.ConsoleAppender].
> DEBUG StatusConsoleListener ConsoleAppender$Builder(target="SYSTEM_OUT", 
> follow="null", direct="null", bufferedIo="null", bufferSize="null", 
> immediateFlush="null", ignoreExceptions="null", 
> PatternLayout(%d{HH:mm:ss.SSS} [%t] %highlight{[%level]}{FATAL=red blink, 
> ERROR=red bold, WARN=yellow bold, INFO=magenta bold, DEBUG=green bold, 
> TRACE=blue bold} %logger{36} - %msg%n), name="Console", 
> Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
>  Filter=null, ={})
> DEBUG StatusConsoleListener Starting OutputStreamManager 
> SYSTEM_OUT.false.false
> DEBUG StatusConsoleListener Building Plugin[name=layout, 
> class=org.apache.logging.log4j.core.layout.PatternLayout].
> DEBUG StatusConsoleListener PatternLayout$Builder(pattern="%d{yyyy-MM-dd 
> HH:mm:ss.SSS} %highlight{[%level]}{FATAL=bright_red bold, ERROR=red bold, 
> WARN=yellow bold, INFO=blue bold, DEBUG=green bold, TRACE=magenta bold} [%t] 
> %logger{36} - %msg%n", PatternSelector=null, 
> Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
>  Replace=null, charset="null", alwaysWriteExceptions="null", 
> disableAnsi="false", noConsoleNoAnsi="null", header="null", footer="null")
> DEBUG StatusConsoleListener Building Plugin[name=appender, 
> class=org.apache.logging.log4j.core.appender.FileAppender].
> DEBUG StatusConsoleListener 
> FileAppender$Builder(fileName="/home/pavel/Temp/mavenproject10.log", 
> append="false", locking="null", advertise="null", advertiseUri="null", 
> createOnDemand="null", filePermissions="null", fileOwner="null", 
> fileGroup="null", bufferedIo="null", bufferSize="null", 
> immediateFlush="true", ignoreExceptions="null", PatternLayout(%d{yyyy-MM-dd 
> HH:mm:ss.SSS} %highlight{[%level]}{FATAL=bright_red bold, ERROR=red bold, 
> WARN=yellow bold, INFO=blue bold, DEBUG=green bold, TRACE=magenta bold} [%t] 
> %logger{36} - %msg%n), name="File", 
> Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
>  Filter=null, ={})
> DEBUG StatusConsoleListener Starting FileManager 
> /home/pavel/Temp/mavenproject10.log
> DEBUG StatusConsoleListener Building Plugin[name=appenders, 
> class=org.apache.logging.log4j.core.config.AppendersPlugin].
> DEBUG StatusConsoleListener createAppenders(={Console, File})
> DEBUG StatusConsoleListener Building Plugin[name=AppenderRef, 
> class=org.apache.logging.log4j.core.config.AppenderRef].
> DEBUG StatusConsoleListener createAppenderRef(ref="File", level="null", 
> Filter=null)
> DEBUG StatusConsoleListener Building Plugin[name=AppenderRef, 
> class=org.apache.logging.log4j.core.config.AppenderRef].
> DEBUG StatusConsoleListener createAppenderRef(ref="Console", level="null", 
> Filter=null)
> DEBUG StatusConsoleListener Building Plugin[name=root, 
> class=org.apache.logging.log4j.core.config.LoggerConfig$RootLogger].
> DEBUG StatusConsoleListener 
> LoggerConfig$RootLogger$Builder(additivity="null", level="DEBUG", 
> levelAndRefs="null", includeLocation="null", ={File, Console}, ={}, 
> Configuration(jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml),
>  Filter=null)
> DEBUG StatusConsoleListener Building Plugin[name=loggers, 
> class=org.apache.logging.log4j.core.config.LoggersPlugin].
> DEBUG StatusConsoleListener createLoggers(={root})
> DEBUG StatusConsoleListener Configuration 
> XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
>  initialized
> DEBUG StatusConsoleListener Starting configuration 
> XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
> DEBUG StatusConsoleListener Started configuration 
> XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
>  OK.
> TRACE StatusConsoleListener Stopping 
> org.apache.logging.log4j.core.config.DefaultConfiguration@2ed2d9cb...
> TRACE StatusConsoleListener DefaultConfiguration notified 1 
> ReliabilityStrategies that config will be stopped.
> TRACE StatusConsoleListener DefaultConfiguration stopping root LoggerConfig.
> TRACE StatusConsoleListener DefaultConfiguration notifying 
> ReliabilityStrategies that appenders will be stopped.
> TRACE StatusConsoleListener DefaultConfiguration stopping remaining Appenders.
> DEBUG StatusConsoleListener Shutting down OutputStreamManager 
> SYSTEM_OUT.false.false-2
> DEBUG StatusConsoleListener OutputStream closed
> DEBUG StatusConsoleListener Shut down OutputStreamManager 
> SYSTEM_OUT.false.false-2, all resources released: true
> DEBUG StatusConsoleListener Appender DefaultConsole-2 stopped with status true
> TRACE StatusConsoleListener DefaultConfiguration stopped 1 remaining 
> Appenders.
> TRACE StatusConsoleListener DefaultConfiguration cleaning Appenders from 1 
> LoggerConfigs.
> DEBUG StatusConsoleListener Stopped 
> org.apache.logging.log4j.core.config.DefaultConfiguration@2ed2d9cb OK
> TRACE StatusConsoleListener Reregistering MBeans after reconfigure. 
> Selector=org.apache.logging.log4j.core.selector.ClassLoaderContextSelector@1e683a3e
> TRACE StatusConsoleListener Reregistering context (1/1): '4f2410ac' 
> org.apache.logging.log4j.core.LoggerContext@d5b810e
> TRACE StatusConsoleListener Unregistering but no MBeans found matching 
> 'org.apache.logging.log4j2:type=4f2410ac'
> TRACE StatusConsoleListener Unregistering but no MBeans found matching 
> 'org.apache.logging.log4j2:type=4f2410ac,component=StatusLogger'
> TRACE StatusConsoleListener Unregistering but no MBeans found matching 
> 'org.apache.logging.log4j2:type=4f2410ac,component=ContextSelector'
> TRACE StatusConsoleListener Unregistering but no MBeans found matching 
> 'org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=*'
> TRACE StatusConsoleListener Unregistering but no MBeans found matching 
> 'org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=*'
> TRACE StatusConsoleListener Unregistering but no MBeans found matching 
> 'org.apache.logging.log4j2:type=4f2410ac,component=AsyncAppenders,name=*'
> TRACE StatusConsoleListener Unregistering but no MBeans found matching 
> 'org.apache.logging.log4j2:type=4f2410ac,component=AsyncLoggerRingBuffer'
> TRACE StatusConsoleListener Unregistering but no MBeans found matching 
> 'org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=*,subtype=RingBuffer'
> DEBUG StatusConsoleListener Registering MBean 
> org.apache.logging.log4j2:type=4f2410ac
> DEBUG StatusConsoleListener Registering MBean 
> org.apache.logging.log4j2:type=4f2410ac,component=StatusLogger
> DEBUG StatusConsoleListener Registering MBean 
> org.apache.logging.log4j2:type=4f2410ac,component=ContextSelector
> DEBUG StatusConsoleListener Registering MBean 
> org.apache.logging.log4j2:type=4f2410ac,component=Loggers,name=
> DEBUG StatusConsoleListener Registering MBean 
> org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=Console
> DEBUG StatusConsoleListener Registering MBean 
> org.apache.logging.log4j2:type=4f2410ac,component=Appenders,name=File
> TRACE StatusConsoleListener Using DummyNanoClock for nanosecond timestamps.
> DEBUG StatusConsoleListener Reconfiguration complete for 
> context[name=4f2410ac] at URI 
> jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml 
> (org.apache.logging.log4j.core.LoggerContext@d5b810e) with optional 
> ClassLoader: null
> DEBUG StatusConsoleListener LoggerContext[name=4f2410ac, 
> org.apache.logging.log4j.core.LoggerContext@d5b810e] started OK.
> FINE: Runtime.exit() called with status: 0 [Mon Nov 20 02:22:40 EET 2023]
> {code}
> Please, note the following piece:
> {code:java}
> DEBUG StatusConsoleListener Shutting down FileManager 
> /home/pavel/Temp/mavenproject10.log
> DEBUG StatusConsoleListener OutputStream closed
> DEBUG StatusConsoleListener Shut down FileManager 
> /home/pavel/Temp/mavenproject10.log, all resources released: true
> DEBUG StatusConsoleListener Appender File stopped with status true
> DEBUG StatusConsoleListener Shutting down OutputStreamManager 
> SYSTEM_OUT.false.false
> DEBUG StatusConsoleListener OutputStream closed
> DEBUG StatusConsoleListener Shut down OutputStreamManager 
> SYSTEM_OUT.false.false, all resources released: true
> DEBUG StatusConsoleListener Appender Console stopped with status true
> TRACE StatusConsoleListener XmlConfiguration stopped 2 remaining Appenders.
> TRACE StatusConsoleListener XmlConfiguration cleaning Appenders from 2 
> LoggerConfigs.
> DEBUG StatusConsoleListener Stopped 
> XmlConfiguration[location=jar:file:/home/pavel/Temp/TestBin/mavenproject10-1.0.0.jar!/log4j2.xml]
>  OK
> DEBUG StatusConsoleListener Stopped LoggerContext[name=4f2410ac, 
> org.apache.logging.log4j.core.LoggerContext@7f3b84b8] with status true
> TRACE StatusConsoleListener Call to LogManager.getLogger(java.lang.Runtime)
> DEBUG StatusConsoleListener PluginManager 'Lookup' found 16 plugins
> DEBUG StatusConsoleListener PluginManager 'Converter' found 45 plugins
> DEBUG StatusConsoleListener Starting OutputStreamManager 
> SYSTEM_OUT.false.false-2
> DEBUG StatusConsoleListener Starting LoggerContext[name=4f2410ac, 
> org.apache.logging.log4j.core.LoggerContext@d5b810e]...
> DEBUG StatusConsoleListener Reconfiguration started for 
> context[name=4f2410ac] at URI null 
> (org.apache.logging.log4j.core.LoggerContext@d5b810e) with optional 
> ClassLoader: null
> DEBUG StatusConsoleListener Using configurationFactory 
> org.apache.logging.log4j.core.config.ConfigurationFactory$Factory@43dac38f
> {code}
> As you see log4j2 closes log file but later it starts it again. In the result 
> log file length is 0 - it is empty. The reason of the problem shows this 
> stack:
> {code:java}
> LoggerContext.reconfigure:688 
> LoggerContext.reconfigure:711 
> LoggerContext.start:253       
> Log4jContextFactory.getContext:155    
> Log4jContextFactory.getContext:47     
> LogManager.getContext:196     
> AbstractLoggerAdapter.getContext:137  
> Hidden Source Calls   
> AbstractLoggerAdapter.getLogger:47    
> Hidden Source Calls   
> LogManager.getLogger:95       
> LogManager.demandSystemLogger:574     
> LogManager$LoggingProviderAccess.demandLoggerFor:2727 
> LoggingProviderImpl.demandJULLoggerFor:412    
> LoggingProviderImpl.demandLoggerFor:438       
> DefaultLoggerFinder.getLogger:159     
> LazyLoggers.getLoggerFromFinder:391   
> LazyLoggers.getLazyLogger:446 
> LazyLoggers.getLogger:416     
> System.getLogger:1822 
> Shutdown.logRuntimeExit:177   
> Shutdown.exit:160     
> Runtime.exit:188      
> System.exit:1916
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to