[ 
https://issues.apache.org/jira/browse/LOG4J2-1182?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15828092#comment-15828092
 ] 

Jan commented on LOG4J2-1182:
-----------------------------

We had the same issue recently with version 2.5:
{noformat}
15.01.17 23:24:58:212 ws.OurClass      [http-bio-9001-exec-5868       ]  ERROR 
- A general error has occurred: Error writing to stream D:/path/to/logFile.log
org.apache.logging.log4j.core.appender.AppenderLoggingException: Error writing 
to stream D:/path/to/logFile.log
    at 
org.apache.logging.log4j.core.appender.OutputStreamManager.write(OutputStreamManager.java:126)
 ~[log4j-core-2.5.jar:2.5]
    at 
org.apache.logging.log4j.core.appender.FileManager.write(FileManager.java:102) 
~[log4j-core-2.5.jar:2.5]
    at 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager.write(RollingFileManager.java:94)
 ~[log4j-core-2.5.jar:2.5]
    at 
org.apache.logging.log4j.core.appender.OutputStreamManager.write(OutputStreamManager.java:136)
 ~[log4j-core-2.5.jar:2.5]
    at 
org.apache.logging.log4j.core.appender.AbstractOutputStreamAppender.append(AbstractOutputStreamAppender.java:114)
 [log4j-core-2.5.jar:2.5]
    at 
org.apache.logging.log4j.core.appender.RollingFileAppender.append(RollingFileAppender.java:88)
 [log4j-core-2.5.jar:2.5]
    at 
org.apache.logging.log4j.core.config.AppenderControl.tryCallAppender(AppenderControl.java:152)
 [log4j-core-2.5.jar:2.5]
    at 
org.apache.logging.log4j.core.config.AppenderControl.callAppender0(AppenderControl.java:125)
 [log4j-core-2.5.jar:2.5]
    at 
org.apache.logging.log4j.core.config.AppenderControl.callAppenderPreventRecursion(AppenderControl.java:116)
 [log4j-core-2.5.jar:2.5]
    at 
org.apache.logging.log4j.core.config.AppenderControl.callAppender(AppenderControl.java:84)
 [log4j-core-2.5.jar:2.5]
    at 
org.apache.logging.log4j.core.config.LoggerConfig.callAppenders(LoggerConfig.java:390)
 [log4j-core-2.5.jar:2.5]
    at 
org.apache.logging.log4j.core.config.LoggerConfig.processLogEvent(LoggerConfig.java:378)
 [log4j-core-2.5.jar:2.5]
    at 
org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:362) 
[log4j-core-2.5.jar:2.5]
    at 
org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:352) 
[log4j-core-2.5.jar:2.5]
    at 
org.apache.logging.log4j.core.config.AwaitCompletionReliabilityStrategy.log(AwaitCompletionReliabilityStrategy.java:63)
 [log4j-core-2.5.jar:2.5]
    at org.apache.logging.log4j.core.Logger.logMessage(Logger.java:147) 
[log4j-core-2.5.jar:2.5]
    at org.apache.log4j.Category.maybeLog(Category.java:440) 
[log4j-1.2-api-2.5.jar:2.5]
    at org.apache.log4j.Category.error(Category.java:214) 
[log4j-1.2-api-2.5.jar:2.5]
    [...]
    at sun.reflect.GeneratedMethodAccessor77.invoke(Unknown Source) ~[?:?]
    at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 ~[?:1.7.0_80]
    at java.lang.reflect.Method.invoke(Method.java:606) ~[?:1.7.0_80]
    at 
org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:180)
 [cxf-api-2.6.14.jar:2.6.14]
    at 
org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:96) 
[cxf-api-2.6.14.jar:2.6.14]
    at 
org.apache.cxf.jaxws.AbstractJAXWSMethodInvoker.invoke(AbstractJAXWSMethodInvoker.java:178)
 [cxf-rt-frontend-jaxws-2.6.14.jar:2.6.14]
    at 
org.apache.cxf.jaxws.JAXWSMethodInvoker.invoke(JAXWSMethodInvoker.java:67) 
[cxf-rt-frontend-jaxws-2.6.14.jar:2.6.14]
    at 
org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:75) 
[cxf-api-2.6.14.jar:2.6.14]
    at 
org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:57)
 [cxf-api-2.6.14.jar:2.6.14]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) 
[?:1.7.0_80]
    at java.util.concurrent.FutureTask.run(FutureTask.java:262) [?:1.7.0_80]
    at 
org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
 [cxf-api-2.6.14.jar:2.6.14]
    at 
org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:106)
 [cxf-api-2.6.14.jar:2.6.14]
    at 
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:263)
 [cxf-api-2.6.14.jar:2.6.14]
    at 
org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
 [cxf-api-2.6.14.jar:2.6.14]
    at 
org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:240)
 [cxf-rt-transports-http-2.6.14.jar:2.6.14]
    at 
org.apache.openejb.server.cxf.CxfWsContainer.onMessage(CxfWsContainer.java:86) 
[openejb-cxf-4.7.1.jar:4.7.1]
    at 
org.apache.openejb.server.webservices.WsServlet.service(WsServlet.java:98) 
[openejb-webservices-4.7.1.jar:4.7.1]
    at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
 [catalina.jar:7.0.55]
    at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
 [catalina.jar:7.0.55]
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 
[tomcat7-websocket.jar:7.0.55]
    at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
 [catalina.jar:7.0.55]
    at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
 [catalina.jar:7.0.55]
    at 
org.apache.logging.log4j.web.Log4jServletFilter.doFilter(Log4jServletFilter.java:71)
 [log4j-web-2.5.jar:2.5]
    at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
 [catalina.jar:7.0.55]
    at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
 [catalina.jar:7.0.55]
    at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
 [catalina.jar:7.0.55]
    at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
 [catalina.jar:7.0.55]
    at org.apache.tomee.catalina.OpenEJBValve.invoke(OpenEJBValve.java:44) 
[tomee-catalina-1.7.1.jar:1.7.1]
    at 
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
 [catalina.jar:7.0.55]
    at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) 
[catalina.jar:7.0.55]
    at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) 
[catalina.jar:7.0.55]
    at 
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) 
[catalina.jar:7.0.55]
    at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
 [catalina.jar:7.0.55]
    at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408) 
[catalina.jar:7.0.55]
    at 
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070)
 [tomcat-coyote.jar:7.0.55]
    at 
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
 [tomcat-coyote.jar:7.0.55]
    at 
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
 [tomcat-coyote.jar:7.0.55]
    at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
[?:1.7.0_80]
    at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
[?:1.7.0_80]
    at 
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
 [tomcat-coyote.jar:7.0.55]
    at java.lang.Thread.run(Thread.java:745) [?:1.7.0_80]
Caused by: java.io.IOException: Stream Closed
    at java.io.FileOutputStream.writeBytes(Native Method) ~[?:1.7.0_80]
    at java.io.FileOutputStream.write(FileOutputStream.java:345) ~[?:1.7.0_80]
    at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82) 
~[?:1.7.0_80]
    at java.io.BufferedOutputStream.write(BufferedOutputStream.java:126) 
~[?:1.7.0_80]
    at 
org.apache.logging.log4j.core.appender.OutputStreamManager.write(OutputStreamManager.java:123)
 ~[log4j-core-2.5.jar:2.5]
    ... 63 more
{noformat}
Up to now this happened only once.
Obviously it happened during rollover, because the size of the last written log 
file is equal to the specified limit of 10 MB.
Here is the config:
{noformat}
<?xml version="1.0" encoding="UTF-8" ?>
<Configuration status="info" monitorInterval="30">
    <Appenders>
        <RollingFile name="root-appender" fileName="D:/path/to/logFile.log" 
filePattern="D:/path/to/logFile-%d{MM-dd-yyyy}-%i.log.gz"
                     ignoreExceptions="false">
            <PatternLayout>
                <Pattern>%d{dd.MM.yy HH:mm:ss:SSS} %-25.25c{2} [%-30.30t] %6p - 
%m%n</Pattern>
            </PatternLayout>
            <SizeBasedTriggeringPolicy size="10 MB"/>
            <DefaultRolloverStrategy max="8"/>
        </RollingFile>

        <RollingFile name="app-appender" fileName="D:/path/to/logFile2.log" 
filePattern="D:/path/to/logFile2-%d{MM-dd-yyyy}-%i.log.gz"
                     ignoreExceptions="false">
            <PatternLayout>
                <Pattern>%d{dd.MM.yy HH:mm:ss:SSS} %-25.25c{2} [%-30.30t] %6p - 
%m%n</Pattern>
            </PatternLayout>
            <SizeBasedTriggeringPolicy size="10 MB"/>
            <DefaultRolloverStrategy max="8"/>
        </RollingFile>

        <!--Console name="console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss,SSS} %-25.25c{2} 
[%-30.30t] %6p - %m%n"/>
        </Console-->
    </Appenders>
    <Loggers>
        <Logger name="our.package.app" level="debug">
            <AppenderRef ref="app-appender" />
        </Logger>
        <Logger name="our.package.customers" level="debug">
            <AppenderRef ref="app-appender" />
        </Logger>
        <Logger name="our.package.app.processing" level="warn">
            <AppenderRef ref="app-appender" />
        </Logger>
        <Logger name="our.package.app.util" level="warn">
            <AppenderRef ref="app-appender" />
        </Logger>
        <Root level="debug">
            <AppenderRef ref="root-appender" />
            <AppenderRef ref="console" />
        </Root>
    </Loggers>
</Configuration>
{noformat}

> RandomAccessFile IOException: Stream Closed is back
> ---------------------------------------------------
>
>                 Key: LOG4J2-1182
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-1182
>             Project: Log4j 2
>          Issue Type: Bug
>          Components: Appenders
>    Affects Versions: 2.4.1
>         Environment: Java 1.8.0_60-b27, OSX 10.11, Jackson 2.6.1, Maven 3.3.3
>            Reporter: Ravi Gairola
>            Priority: Minor
>              Labels: Rollover
>
> This error pops up every now and then and looks very similar to LOG4J2-636:
> {code:java}
> 2015-10-27-23:00:00 2015-10-27 16:00:00,038 scribe-EventScribe ERROR Unable 
> to write to stream logs/server.log for appender AppLog
> 2015-10-27-23:00:00 2015-10-27 16:00:00,038 scribe-EventScribe ERROR An 
> exception occurred processing Appender AppLog 
> org.apache.logging.log4j.core.appender.AppenderLoggingException: Error 
> writing to RandomAccessFile logs/server.log
> 2015-10-27-23:00:00   at 
> org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager.flush(RollingRandomAccessFileManager.java:132)
> 2015-10-27-23:00:00   at 
> org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager.write(RollingRandomAccessFileManager.java:112)
> 2015-10-27-23:00:00   at 
> org.apache.logging.log4j.core.appender.OutputStreamManager.write(OutputStreamManager.java:136)
> 2015-10-27-23:00:00   at 
> org.apache.logging.log4j.core.appender.AbstractOutputStreamAppender.append(AbstractOutputStreamAppender.java:105)
> 2015-10-27-23:00:00   at 
> org.apache.logging.log4j.core.appender.RollingRandomAccessFileAppender.append(RollingRandomAccessFileAppender.java:98)
> 2015-10-27-23:00:00   at 
> org.apache.logging.log4j.core.config.AppenderControl.tryCallAppender(AppenderControl.java:152)
> 2015-10-27-23:00:00   at 
> org.apache.logging.log4j.core.config.AppenderControl.callAppender0(AppenderControl.java:125)
> 2015-10-27-23:00:00   at 
> org.apache.logging.log4j.core.config.AppenderControl.callAppenderPreventRecursion(AppenderControl.java:116)
> 2015-10-27-23:00:00   at 
> org.apache.logging.log4j.core.config.AppenderControl.callAppender(AppenderControl.java:84)
> 2015-10-27-23:00:00   at 
> org.apache.logging.log4j.core.config.LoggerConfig.callAppenders(LoggerConfig.java:390)
> 2015-10-27-23:00:00   at 
> org.apache.logging.log4j.core.config.LoggerConfig.processLogEvent(LoggerConfig.java:378)
> 2015-10-27-23:00:00   at 
> org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:362)
> 2015-10-27-23:00:00   at 
> org.apache.logging.log4j.core.config.LoggerConfig.logParent(LoggerConfig.java:384)
> 2015-10-27-23:00:00   at 
> org.apache.logging.log4j.core.config.LoggerConfig.processLogEvent(LoggerConfig.java:379)
> 2015-10-27-23:00:00   at 
> org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:362)
> 2015-10-27-23:00:00   at 
> org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:352)
> 2015-10-27-23:00:00   at 
> org.apache.logging.log4j.core.config.AwaitCompletionReliabilityStrategy.log(AwaitCompletionReliabilityStrategy.java:63)
> 2015-10-27-23:00:00   at 
> org.apache.logging.log4j.core.Logger.logMessage(Logger.java:143)
> 2015-10-27-23:00:00   at 
> org.apache.logging.log4j.spi.AbstractLogger.logMessage(AbstractLogger.java:1011)
> 2015-10-27-23:00:00   at 
> org.apache.logging.log4j.spi.AbstractLogger.logIfEnabled(AbstractLogger.java:988)
> 2015-10-27-23:00:00   at 
> org.apache.logging.slf4j.Log4jLogger.error(Log4jLogger.java:318)
> 2015-10-27-23:00:00   at 
> com.nextbit.syncserver.common.EventScribe$Scribe.run(EventScribe.java:142)
> 2015-10-27-23:00:00 Caused by: java.io.IOException: Stream Closed
> 2015-10-27-23:00:00   at java.io.RandomAccessFile.writeBytes(Native Method)
> 2015-10-27-23:00:00   at 
> java.io.RandomAccessFile.write(RandomAccessFile.java:525)
> 2015-10-27-23:00:00   at 
> org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager.flush(RollingRandomAccessFileManager.java:129)
> 2015-10-27-23:00:00   ... 21 more
> {code}
> Here's the respective yaml configuration:
> {code}
> configuration:
>   monitorInterval: 60
>   status: WARN
>   name: Production Configuration
>   packages: com.our.packages
>   appenders:
>     appender:
>       -
>         type: Console
>         name: CONSOLE
>         PatternLayout: { pattern: '%d{yyyy-MMM-dd-HH:mm:ss.SSS} 
> [%p|%c{1}|%t|%X{rid}] %h: %m %n' }
>       -
>         type: RollingRandomAccessFile
>         name: AppLog
>         fileName: logs/server.log
>         filePattern: 'logs/server.log.%d{yyyy-MM-dd-HH}.gz'
>         append: true
>         PatternLayout: { pattern: '%d{yyyy-MMM-dd-HH:mm:ss.SSS} 
> [%p|%c{1}|%t|%X{rid}] %h: %m %n' }
>         TimeBasedTriggeringPolicy: { modulate: true }
>         DefaultRolloverStrategy: { max: 240 }
>   loggers:
>       - { name: com.amazonaws, level: warn }
>       - { name: org.hibernate, level: warn }
>     root:
>       level: info
>       AppenderRef: { ref: AppLog }
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscr...@logging.apache.org
For additional commands, e-mail: log4j-dev-h...@logging.apache.org

Reply via email to