Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Logging 尝试将条目添加到访问日志时发生异常_Logging_Tomcat7 - Fatal编程技术网

Logging 尝试将条目添加到访问日志时发生异常

Logging 尝试将条目添加到访问日志时发生异常,logging,tomcat7,Logging,Tomcat7,Tomcat 7无法写入访问日志,并引发以下异常 Nov 17, 2016 5:10:37 PM org.apache.catalina.connector.CoyoteAdapter log WARNING: Exception while attempting to add an entry to the access log java.lang.NullPointerException at org.apache.catalina.connector.CoyoteAdapt

Tomcat 7无法写入访问日志,并引发以下异常

Nov 17, 2016 5:10:37 PM org.apache.catalina.connector.CoyoteAdapter log
WARNING: Exception while attempting to add an entry to the access log
java.lang.NullPointerException
        at org.apache.catalina.connector.CoyoteAdapter.log(CoyoteAdapter.java:555)
        at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:182)
        at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
        at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
        at java.lang.Thread.run(Thread.java:745)

如何解决这个问题?

这是Tomcat中的一个已知问题,在Tomcat 8.0.29中已经解决。升级Tomcat应该可以解决这个问题。

另一种方法是修改访问日志模式,使其不包含cookie。使用类似以下内容:

pattern="%t %H request:%{SESSIONID}r %m %U %s %q %r"
而不是

pattern="%t %H cookie:%{SESSIONID}c request:%{SESSIONID}r %m %U %s %q %r"
在server.xml中

    <!-- Access log processes all example.
         Documentation at: /docs/config/valve.html
         Note: The pattern used is equivalent to using pattern="common" -->
    <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
           prefix="localhost_access_log" suffix=".txt"
           pattern="%h %l %u %t &quot;%r&quot; %s %b" />

  </Host>
</Engine>