“打开的文件太多”。在WSO2 EI 6.1.1上,当log4j级别为“ DEBUG”时,代理服务成功运行,而当log4j级别为“ INFO”时,代理服务失败。

时间:2018-09-20 04:22:45

标签: wso2 log4j

这是一个奇怪的问题。 当我设置log4j.category.org.apache.synapse = DEBUG时,一切都很好。 当更改为log4j.category.org.apache.synapse = INFO时,同一代理服务失败。 这是我的配置: batchLoadDiagProxy

singleLoadDiagProxy

当日志级别为INFO时,我得到错误:

  

[2018-09-19 09:18:50,242] [EI-Core]警告-PassThroughHttpListener系统可能不稳定:HTTP ListeningIOReactor遇到已检查的异常:打开文件过多java.io.IOException:打开文件过多< br />   在sun.nio.ch.ServerSocketChannelImpl.accept0(本机方法)

     

在sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:422)

     

在sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:250)

     

在org.apache.http.impl.nio.reactor.DefaultListeningIOReactor.processEvent(DefaultListeningIOReactor.java:170)

     

在org.apache.http.impl.nio.reactor.DefaultListeningIOReactor.processEvents(DefaultListeningIOReactor.java:153)

     

在org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor.execute(AbstractMultiworkerIOReactor.java:349)

     

在org.apache.synapse.transport.passthru.core.PassThroughListeningIOReactorManager $ 1.run(PassThroughListeningIOReactorManager.java:506)

     

在java.lang.Thread.run(Thread.java:745)

     

[2018-09-19 09:18:50,271] [EI-Core]错误-发送消息时发生Axis2Sender意外错误   java.lang.IllegalStateException:I / O反应器已关闭

1 个答案:

答案 0 :(得分:0)

尝试打开命令行并以超级用户身份输入: ulimit -f 100000 这将延迟错误,但不会消除错误。问题是INFO将更多数据输出到不同的文件中。在打开下一个文件句柄之前,不会关闭每个文件句柄。这意味着操作系统很快就会用完文件句柄。

在需要调试时启用INFO。

相关问题