[
https://issues.apache.org/jira/browse/LOG4J2-1162?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14962505#comment-14962505
]
Gary Gregory commented on LOG4J2-1162:
--------------------------------------
I changed my tear down to:
{code:java}
@AfterClass
public static void afterClass() {
Configurator.shutdown(LoggerContext.getContext(false));
}
{code}
The file is still 32 MB.
{noformat}
2015-10-18 10:01:17,014 main DEBUG Initializing configuration
XmlConfiguration[location=E:\vcs\svn\rocket\data\DvDbc\dv-jdbc\trunk\dv-jdbc\target\test-classes\log4j2.xml]
2015-10-18 10:01:17,016 main TRACE Starting Log4j2ConfigWatcher thread
2015-10-18 10:01:17,020 main DEBUG Installed script engines
2015-10-18 10:01:17,034 main DEBUG Mozilla Rhino Version: 1.7 release 3
PRERELEASE, Language: ECMAScript, Threading: MULTITHREADED, Compile: true,
Names: {js, rhino, JavaScript, javascript, ECMAScript, ecmascript}
2015-10-18 10:01:17,034 main DEBUG PluginManager 'Core' found 86 plugins
2015-10-18 10:01:17,035 main DEBUG PluginManager 'Level' found 0 plugins
2015-10-18 10:01:17,037 main DEBUG PluginManager 'Lookup' found 13 plugins
2015-10-18 10:01:17,038 main DEBUG Building Plugin[name=layout,
class=org.apache.logging.log4j.core.layout.PatternLayout].
2015-10-18 10:01:17,044 main TRACE TypeConverterRegistry initializing.
2015-10-18 10:01:17,045 main DEBUG PluginManager 'TypeConverter' found 21
plugins
2015-10-18 10:01:17,055 main DEBUG
PatternLayout$Builder(pattern="%style{%d}{white}
%highlight{%-5level}{TRACE=white} %style{[%t][%logger]}{white}
%highlight{%msg%n%throwable}{TRACE=white}", PatternSelector=null,
Configuration(E:\vcs\svn\rocket\data\DvDbc\dv-jdbc\trunk\dv-jdbc\target\test-classes\log4j2.xml),
Replace=null, charset="null", alwaysWriteExceptions="null",
noConsoleNoAnsi="true", header="null", footer="null")
2015-10-18 10:01:17,056 main DEBUG PluginManager 'Converter' found 38 plugins
2015-10-18 10:01:17,064 main DEBUG Building Plugin[name=appender,
class=org.apache.logging.log4j.core.appender.ConsoleAppender].
2015-10-18 10:01:17,065 main DEBUG Not in a ServletContext environment, thus
not loading WebLookup plugin.
2015-10-18 10:01:17,066 main DEBUG PluginManager 'Converter' found 38 plugins
2015-10-18 10:01:17,067 main WARN Unable to instantiate
org.fusesource.jansi.WindowsAnsiOutputStream
2015-10-18 10:01:17,070 main DEBUG
ConsoleAppender$Builder(PatternLayout(%style{%d}{white}
%highlight{%-5level}{TRACE=white} %style{[%t][%logger]}{white}
%highlight{%msg%n%throwable}{TRACE=white}), Filter=null, target="SYSTEM_OUT",
name="Console", follow="null", ignoreExceptions="null")
2015-10-18 10:01:17,071 main WARN Unable to instantiate
org.fusesource.jansi.WindowsAnsiOutputStream
2015-10-18 10:01:17,071 main DEBUG Building Plugin[name=layout,
class=org.apache.logging.log4j.core.layout.PatternLayout].
2015-10-18 10:01:17,073 main DEBUG PatternLayout$Builder(pattern="%d %-5level
[%t][%logger] %msg%n%throwable", PatternSelector=null,
Configuration(E:\vcs\svn\rocket\data\DvDbc\dv-jdbc\trunk\dv-jdbc\target\test-classes\log4j2.xml),
Replace=null, charset="null", alwaysWriteExceptions="null",
noConsoleNoAnsi="null", header="null", footer="null")
2015-10-18 10:01:17,074 main DEBUG Building
Plugin[name=SizeBasedTriggeringPolicy,
class=org.apache.logging.log4j.core.appender.rolling.SizeBasedTriggeringPolicy].
2015-10-18 10:01:17,079 main DEBUG createPolicy(size="100 MB")
2015-10-18 10:01:17,080 main DEBUG Building Plugin[name=Policies,
class=org.apache.logging.log4j.core.appender.rolling.CompositeTriggeringPolicy].
2015-10-18 10:01:17,081 main DEBUG
createPolicy(={SizeBasedTriggeringPolicy(size=104857600)})
2015-10-18 10:01:17,081 main DEBUG Building Plugin[name=appender,
class=org.apache.logging.log4j.core.appender.RollingRandomAccessFileAppender].
2015-10-18 10:01:17,083 main DEBUG
createAppender(fileName="/test/dv/logs/dv.log-OFF",
filePattern="/test/dv/logs/${date:yyyy-MM}/dv-%d{yyyy-MM-dd}-%i.log.gz",
append="false", name="RollingFile", immediateFlush="null", bufferSize="null",
Policies(CompositeTriggeringPolicy(policies=[SizeBasedTriggeringPolicy(size=104857600)])),
Strategy=null, PatternLayout(%d %-5level [%t][%logger] %msg%n%throwable),
Filter=null, ignoreExceptions="null", advertise="null", advertiseURI="null",
Configuration(E:\vcs\svn\rocket\data\DvDbc\dv-jdbc\trunk\dv-jdbc\target\test-classes\log4j2.xml))
2015-10-18 10:01:17,087 main TRACE RandomAccessFile /test/dv/logs/dv.log-OFF
set length to 0
2015-10-18 10:01:17,087 main DEBUG Starting RollingRandomAccessFileManager
/test/dv/logs/dv.log-OFF
2015-10-18 10:01:17,088 main DEBUG PluginManager 'FileConverter' found 2 plugins
2015-10-18 10:01:17,090 main DEBUG Building Plugin[name=layout,
class=org.apache.logging.log4j.core.layout.PatternLayout].
2015-10-18 10:01:17,091 main DEBUG PatternLayout$Builder(pattern="%d %-5level
[%t][%logger] %msg%n%throwable", PatternSelector=null,
Configuration(E:\vcs\svn\rocket\data\DvDbc\dv-jdbc\trunk\dv-jdbc\target\test-classes\log4j2.xml),
Replace=null, charset="null", alwaysWriteExceptions="null",
noConsoleNoAnsi="null", header="null", footer="null")
2015-10-18 10:01:17,092 main DEBUG Building Plugin[name=appender,
class=org.apache.logging.log4j.core.appender.MemoryMappedFileAppender].
2015-10-18 10:01:17,095 main DEBUG
createAppender(fileName="/test/dv/logs/dv.log", append="false",
name="MemMapFile", immediateFlush="null", regionLength="null",
ignoreExceptions="null", PatternLayout(%d %-5level [%t][%logger]
%msg%n%throwable), Filter=null, advertise="null", advertiseURI="null",
Configuration(E:\vcs\svn\rocket\data\DvDbc\dv-jdbc\trunk\dv-jdbc\target\test-classes\log4j2.xml))
2015-10-18 10:01:17,100 main DEBUG Starting MemoryMappedFileManager
/test/dv/logs/dv.log
2015-10-18 10:01:17,103 main DEBUG MMapAppender remapping /test/dv/logs/dv.log
start=0, size=33554432
2015-10-18 10:01:17,105 main DEBUG MMapAppender remapped /test/dv/logs/dv.log
OK in 1.017464 millis
2015-10-18 10:01:17,105 main DEBUG Building Plugin[name=appenders,
class=org.apache.logging.log4j.core.config.AppendersPlugin].
2015-10-18 10:01:17,107 main DEBUG createAppenders(={Console, RollingFile,
MemMapFile})
2015-10-18 10:01:17,107 main DEBUG Building Plugin[name=AppenderRef,
class=org.apache.logging.log4j.core.config.AppenderRef].
2015-10-18 10:01:17,108 main DEBUG createAppenderRef(ref="MemMapFile",
level="null", Filter=null)
2015-10-18 10:01:17,108 main DEBUG Building Plugin[name=root,
class=org.apache.logging.log4j.core.config.LoggerConfig$RootLogger].
2015-10-18 10:01:17,110 main DEBUG createLogger(additivity="null",
level="TRACE", includeLocation="null", ={MemMapFile}, ={},
Configuration(E:\vcs\svn\rocket\data\DvDbc\dv-jdbc\trunk\dv-jdbc\target\test-classes\log4j2.xml),
Filter=null)
2015-10-18 10:01:17,110 main DEBUG Building Plugin[name=logger,
class=org.apache.logging.log4j.core.config.LoggerConfig].
2015-10-18 10:01:17,112 main DEBUG createLogger(additivity="null",
level="INFO", name="javax.management", includeLocation="null", ={}, ={},
Configuration(E:\vcs\svn\rocket\data\DvDbc\dv-jdbc\trunk\dv-jdbc\target\test-classes\log4j2.xml),
Filter=null)
2015-10-18 10:01:17,112 main DEBUG Building Plugin[name=logger,
class=org.apache.logging.log4j.core.config.LoggerConfig].
2015-10-18 10:01:17,113 main DEBUG createLogger(additivity="null",
level="INFO", name="sun.rmi", includeLocation="null", ={}, ={},
Configuration(E:\vcs\svn\rocket\data\DvDbc\dv-jdbc\trunk\dv-jdbc\target\test-classes\log4j2.xml),
Filter=null)
2015-10-18 10:01:17,113 main DEBUG Building Plugin[name=logger,
class=org.apache.logging.log4j.core.config.LoggerConfig].
2015-10-18 10:01:17,115 main DEBUG createLogger(additivity="null", level="OFF",
name="com.rs.dv.util.LoggerEnvironmentReporter", includeLocation="null", ={},
={},
Configuration(E:\vcs\svn\rocket\data\DvDbc\dv-jdbc\trunk\dv-jdbc\target\test-classes\log4j2.xml),
Filter=null)
2015-10-18 10:01:17,115 main DEBUG Building Plugin[name=loggers,
class=org.apache.logging.log4j.core.config.LoggersPlugin].
2015-10-18 10:01:17,115 main DEBUG createLoggers(={root, javax.management,
sun.rmi, com.rs.dv.util.LoggerEnvironmentReporter})
2015-10-18 10:01:17,116 main DEBUG Building Plugin[name=filters,
class=org.apache.logging.log4j.core.filter.CompositeFilter].
2015-10-18 10:01:17,117 main DEBUG createFilters(={})
2015-10-18 10:01:17,117 main DEBUG Configuration
XmlConfiguration[location=E:\vcs\svn\rocket\data\DvDbc\dv-jdbc\trunk\dv-jdbc\target\test-classes\log4j2.xml]
initialized
2015-10-18 10:01:17,118 main DEBUG Starting configuration
XmlConfiguration[location=E:\vcs\svn\rocket\data\DvDbc\dv-jdbc\trunk\dv-jdbc\target\test-classes\log4j2.xml]
2015-10-18 10:01:17,119 main DEBUG Started configuration
XmlConfiguration[location=E:\vcs\svn\rocket\data\DvDbc\dv-jdbc\trunk\dv-jdbc\target\test-classes\log4j2.xml]
OK.
2015-10-18 10:01:17,119 main TRACE Stopping
org.apache.logging.log4j.core.config.DefaultConfiguration@41c9b008...
2015-10-18 10:01:17,120 main TRACE DefaultConfiguration notified 0
ReliabilityStrategies that config will be stopped.
2015-10-18 10:01:17,120 main TRACE DefaultConfiguration stopped 0
AsyncLoggerConfigs.
2015-10-18 10:01:17,120 main TRACE DefaultConfiguration stopped 0
AsyncAppenders.
2015-10-18 10:01:17,121 main TRACE DefaultConfiguration notified 0
ReliabilityStrategies that appenders will be stopped.
2015-10-18 10:01:17,121 main TRACE DefaultConfiguration stopped 1 Appenders.
2015-10-18 10:01:17,121 main TRACE DefaultConfiguration stopped 0 LoggerConfigs.
2015-10-18 10:01:17,121 main DEBUG Stopped
org.apache.logging.log4j.core.config.DefaultConfiguration@41c9b008 OK
2015-10-18 10:01:17,164 main DEBUG Registering MBean
org.apache.logging.log4j2:type=1643672541
2015-10-18 10:01:17,166 main DEBUG Registering MBean
org.apache.logging.log4j2:type=1643672541,component=StatusLogger
2015-10-18 10:01:17,166 main DEBUG Registering MBean
org.apache.logging.log4j2:type=1643672541,component=ContextSelector
2015-10-18 10:01:17,167 main DEBUG Registering MBean
org.apache.logging.log4j2:type=1643672541,component=Loggers,name=javax.management
2015-10-18 10:01:17,168 main DEBUG Registering MBean
org.apache.logging.log4j2:type=1643672541,component=Loggers,name=
2015-10-18 10:01:17,169 main DEBUG Registering MBean
org.apache.logging.log4j2:type=1643672541,component=Loggers,name=com.rs.dv.util.LoggerEnvironmentReporter
2015-10-18 10:01:17,169 main DEBUG Registering MBean
org.apache.logging.log4j2:type=1643672541,component=Loggers,name=sun.rmi
2015-10-18 10:01:17,170 main DEBUG Registering MBean
org.apache.logging.log4j2:type=1643672541,component=Appenders,name=Console
2015-10-18 10:01:17,170 main DEBUG Registering MBean
org.apache.logging.log4j2:type=1643672541,component=Appenders,name=MemMapFile
2015-10-18 10:01:17,171 main DEBUG Registering MBean
org.apache.logging.log4j2:type=1643672541,component=Appenders,name=RollingFile
2015-10-18 10:01:17,172 main TRACE Using default SystemClock for timestamps.
2015-10-18 10:01:17,173 main TRACE Using DummyNanoClock for nanosecond
timestamps.
2015-10-18 10:01:17,174 main TRACE Using default SystemClock for timestamps.
2015-10-18 10:01:17,175 main DEBUG AsyncLogger.ThreadNameStrategy=CACHED
2015-10-18 10:01:17,175 main DEBUG property AsyncLogger.WaitStrategy=null
2015-10-18 10:01:17,176 main DEBUG disruptor event handler uses
BlockingWaitStrategy
2015-10-18 10:01:17,204 main DEBUG No AsyncLogger.ExceptionHandler specified
2015-10-18 10:01:17,208 main DEBUG Starting AsyncLogger disruptor with
ringbuffer size 262144...
2015-10-18 10:01:17,209 main DEBUG Reconfiguration complete for
context[name=1643672541] at URI
E:\vcs\svn\rocket\data\DvDbc\dv-jdbc\trunk\dv-jdbc\target\test-classes\log4j2.xml
(org.apache.logging.log4j.core.LoggerContext@7fae5c75) with optional
ClassLoader: null
2015-10-18 10:01:17,209 main DEBUG Shutdown hook enabled. Registering a new one.
2015-10-18 10:01:17,210 main DEBUG LoggerContext[name=1643672541,
org.apache.logging.log4j.core.LoggerContext@7fae5c75] started OK.
2015-10-18 10:01:55,602 main DEBUG Stopping LoggerContext[name=1643672541,
org.apache.logging.log4j.core.LoggerContext@7fae5c75]...
2015-10-18 10:01:55,603 main DEBUG Unregistering MBean
org.apache.logging.log4j2:type=1643672541
2015-10-18 10:01:55,604 main DEBUG Unregistering MBean
org.apache.logging.log4j2:type=1643672541,component=StatusLogger
2015-10-18 10:01:55,605 main DEBUG Unregistering MBean
org.apache.logging.log4j2:type=1643672541,component=ContextSelector
2015-10-18 10:01:55,606 main DEBUG Unregistering MBean
org.apache.logging.log4j2:type=1643672541,component=Loggers,name=com.rs.dv.util.LoggerEnvironmentReporter
2015-10-18 10:01:55,606 main DEBUG Unregistering MBean
org.apache.logging.log4j2:type=1643672541,component=Loggers,name=javax.management
2015-10-18 10:01:55,607 main DEBUG Unregistering MBean
org.apache.logging.log4j2:type=1643672541,component=Loggers,name=
2015-10-18 10:01:55,607 main DEBUG Unregistering MBean
org.apache.logging.log4j2:type=1643672541,component=Loggers,name=sun.rmi
2015-10-18 10:01:55,608 main DEBUG Unregistering MBean
org.apache.logging.log4j2:type=1643672541,component=Appenders,name=Console
2015-10-18 10:01:55,609 main DEBUG Unregistering MBean
org.apache.logging.log4j2:type=1643672541,component=Appenders,name=RollingFile
2015-10-18 10:01:55,609 main DEBUG Unregistering MBean
org.apache.logging.log4j2:type=1643672541,component=Appenders,name=MemMapFile
2015-10-18 10:01:55,612 main TRACE Stopping
XmlConfiguration[location=E:\vcs\svn\rocket\data\DvDbc\dv-jdbc\trunk\dv-jdbc\target\test-classes\log4j2.xml]...
2015-10-18 10:01:55,613 main TRACE XmlConfiguration notified 4
ReliabilityStrategies that config will be stopped.
2015-10-18 10:01:55,613 main TRACE XmlConfiguration stopped 0
AsyncLoggerConfigs.
2015-10-18 10:01:55,614 main TRACE XmlConfiguration stopped 0 AsyncAppenders.
2015-10-18 10:01:55,614 main TRACE XmlConfiguration notified 4
ReliabilityStrategies that appenders will be stopped.
2015-10-18 10:01:55,615 main DEBUG Shutting down RollingRandomAccessFileManager
/test/dv/logs/dv.log-OFF
2015-10-18 10:01:55,616 main DEBUG Shutting down MemoryMappedFileManager
/test/dv/logs/dv.log
2015-10-18 10:01:55,616 main DEBUG MMapAppender unmapping old buffer...
2015-10-18 10:01:55,619 main DEBUG MMapAppender unmapped buffer OK in 2.433866
millis
2015-10-18 10:01:55,620 main DEBUG MMapAppender closing. Setting
/test/dv/logs/dv.log length to 5697448 (offset 0 + position 5697448)
2015-10-18 10:01:55,621 main TRACE XmlConfiguration stopped 3 Appenders.
2015-10-18 10:01:55,621 main TRACE XmlConfiguration stopped 4 LoggerConfigs.
2015-10-18 10:01:55,622 main TRACE XmlConfiguration stopping
Log4j2ConfigWatcher thread.
2015-10-18 10:01:55,622 main DEBUG Stopped
XmlConfiguration[location=E:\vcs\svn\rocket\data\DvDbc\dv-jdbc\trunk\dv-jdbc\target\test-classes\log4j2.xml]
OK
2015-10-18 10:01:55,623 main DEBUG Stopped LoggerContext[name=1643672541,
org.apache.logging.log4j.core.LoggerContext@7fae5c75]...
{noformat}
> Memory-mapped file appender creates null-padded files.
> ------------------------------------------------------
>
> Key: LOG4J2-1162
> URL: https://issues.apache.org/jira/browse/LOG4J2-1162
> Project: Log4j 2
> Issue Type: Bug
> Components: Appenders
> Affects Versions: 2.4.1
> Environment: Apache Maven 3.3.3
> (7994120775791599e205a5524ec3e0dfe41d4a06; 2015-04-22T04:57:37-07:00)
> Maven home: C:\Java\apache-maven-3.3.3\bin\..
> Java version: 1.7.0_79, vendor: Oracle Corporation
> Java home: C:\Program Files\Java\jdk1.7.0_79\jre
> Default locale: en_US, platform encoding: Cp1252
> OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows"
> Reporter: Gary Gregory
> Fix For: 2.5
>
>
> Memory-mapped file appender creates null-padded files.
> If configured my app like this:
> {code:xml}
> <?xml version="1.0" encoding="UTF-8"?>
> <!-- Copyright 2014-2015 Rocket Software, Inc. All rights reserved. -->
> <Configuration status="WARN" monitorInterval="5">
> <Appenders>
> <Console name="Console" target="SYSTEM_OUT">
> <PatternLayout noConsoleNoAnsi="true"
> pattern="%style{%d}{white} %highlight{%-5level}{TRACE=white}
> %style{[%t][%logger]}{white} %highlight{%msg%n%throwable}{TRACE=white}" />
> </Console>
> <RollingRandomAccessFile name="RollingFile" append="false"
> fileName="/test/dv/logs/dv.log-OFF"
>
> filePattern="/test/dv/logs/$${date:yyyy-MM}/dv-%d{yyyy-MM-dd}-%i.log.gz">
> <PatternLayout>
> <Pattern>%d %-5level [%t][%logger] %msg%n%throwable</Pattern>
> </PatternLayout>
> <Policies>
> <SizeBasedTriggeringPolicy size="100 MB" />
> </Policies>
> </RollingRandomAccessFile>
> <MemoryMappedFile name="MemMapFile" append="false"
> fileName="/test/dv/logs/dv.log">
> <PatternLayout>
> <Pattern>%d %-5level [%t][%logger] %msg%n%throwable</Pattern>
> </PatternLayout>
> </MemoryMappedFile>
> </Appenders>
> <Loggers>
> <Root level="trace">
> <!-- <AppenderRef ref="Console" /> -->
> <!-- <AppenderRef ref="RollingFile" /> -->
> <AppenderRef ref="MemMapFile" />
> </Root>
> <Logger name="javax.management" level="INFO" />
> <Logger name="sun.rmi" level="INFO" />
> <Logger name="com.rs.dv.util.LoggerEnvironmentReporter" level="OFF" />
> </Loggers>
> <!-- Filters -->
> <Filters>
> <!-- SQL only -->
> <!-- <MarkerFilter marker="DV.SQL" onMatch="ACCEPT" onMismatch="DENY" />
> <MarkerFilter marker="DV.SQL.QUERY" onMatch="ACCEPT"
> onMismatch="DENY" /> <MarkerFilter marker="DV.SQL.UPDATE"
> onMatch="ACCEPT" onMismatch="DENY" /> -->
> <!-- No buffer hex dumps -->
> <!-- <MarkerFilter marker="DV.BUFFER" onMatch="DENY" onMismatch="NEUTRAL"
> /> -->
> </Filters>
> </Configuration>
> {code}
> After the app runs, I have a 32 MB log file, with the later 2/3 of the file,
> all null bytes.
> Clearly, we need to limit what we write out.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]