[metrics-bugs] #24823 [Metrics/Website]: Avoid logging an exception when the client aborts a CSV file download

Tor Bug Tracker & Wiki blackhole at torproject.org
Mon Jan 8 10:17:19 UTC 2018


#24823: Avoid logging an exception when the client aborts a CSV file download
---------------------------------+--------------------------
     Reporter:  karsten          |      Owner:  metrics-team
         Type:  defect           |     Status:  new
     Priority:  Low              |  Milestone:
    Component:  Metrics/Website  |    Version:
     Severity:  Normal           |   Keywords:
Actual Points:                   |  Parent ID:
       Points:                   |   Reviewer:
      Sponsor:                   |
---------------------------------+--------------------------
 I found this exception in the logs:

 {{{
 2018-01-08 10:13:23,734 WARN o.e.j.s.Response:565 Committed before 500
 null
 2018-01-08 10:13:23,734 WARN o.e.j.s.ServletHandler:628 /stats/clients.csv
 java.lang.IllegalStateException: Committed
         at
 org.eclipse.jetty.server.Response.resetBuffer(Response.java:1242)
         at org.eclipse.jetty.server.Response.sendError(Response.java:567)
         at org.eclipse.jetty.server.Response.sendError(Response.java:544)
         at
 org.torproject.metrics.web.research.ResearchStatsServlet.doGet(ResearchStatsServlet.java:68)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:649)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
         at
 org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812)
         at
 org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:587)
         at
 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
         at
 org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
         at
 org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
         at
 org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
         at
 org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
         at
 org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
         at
 org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
         at
 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
         at
 org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)
         at
 org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
         at org.eclipse.jetty.server.Server.handle(Server.java:499)
         at
 org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)
         at
 org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:258)
         at
 org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)
         at
 org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
         at
 org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
         at java.lang.Thread.run(Thread.java:748)
 2018-01-08 10:13:23,734 WARN o.e.j.s.HttpChannel:396 /stats/clients.csv
 java.lang.IllegalStateException: Committed
         at
 org.eclipse.jetty.server.Response.resetBuffer(Response.java:1242)
         at org.eclipse.jetty.server.Response.sendError(Response.java:567)
         at org.eclipse.jetty.server.Response.sendError(Response.java:544)
         at
 org.torproject.metrics.web.research.ResearchStatsServlet.doGet(ResearchStatsServlet.java:68)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:649)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
         at
 org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812)
         at
 org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:587)
         at
 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
         at
 org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
         at
 org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
         at
 org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
         at
 org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
         at
 org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
         at
 org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
         at
 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
         at
 org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)
         at
 org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
         at org.eclipse.jetty.server.Server.handle(Server.java:499)
         at
 org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)
         at
 org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:258)
         at
 org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)
         at
 org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
         at
 org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
         at java.lang.Thread.run(Thread.java:748)
 2018-01-08 10:13:23,734 WARN o.e.j.s.HttpChannel:482 Could not send
 response error 500: java.lang.IllegalStateException: Committed
 }}}

 I believe that it's the result of receiving a request for a (large) CSV
 file that is then not fully downloaded by the client. If that's true, it's
 harmless to have this exception in the logs, except that it may make us
 blind for discovering actual problems. We should avoid logging this
 exception, if possible. Low priority, though.

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/24823>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the metrics-bugs mailing list