wicket-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Martin Tzvetanov Grigorov (Jira)" <j...@apache.org>
Subject [jira] [Resolved] (WICKET-6767) Do not log error for broken pipes in websocket connections
Date Mon, 20 Apr 2020 20:35:00 GMT

     [ https://issues.apache.org/jira/browse/WICKET-6767?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Martin Tzvetanov Grigorov resolved WICKET-6767.
-----------------------------------------------
    Fix Version/s: 9.0.0-M6
                   7.17.0
                   8.9.0
       Resolution: Fixed

> Do not log error for broken pipes in websocket connections
> ----------------------------------------------------------
>
>                 Key: WICKET-6767
>                 URL: https://issues.apache.org/jira/browse/WICKET-6767
>             Project: Wicket
>          Issue Type: Improvement
>          Components: wicket-native-websocket
>    Affects Versions: 9.0.0-M4
>            Reporter: Thomas Heigl
>            Assignee: Martin Tzvetanov Grigorov
>            Priority: Major
>             Fix For: 8.9.0, 7.17.0, 9.0.0-M6
>
>
> We had some "IOException: Broken pipe" errors on production:
> {code:java}
>  Apr 10 14:34:26  ERR o.a.w.p.w.j.WicketEndpoint An error occurred in web socket connection
with id : f2d
>  Apr 10 14:34:26  #011java.io.IOException java.io.IOException: Broken pipe
>  Apr 10 14:34:26  #011at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendMessageBlock(WsRemoteEndpointImplBase.java:315)
>  Apr 10 14:34:26  #011at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendMessageBlock(WsRemoteEndpointImplBase.java:258)
>  Apr 10 14:34:26  #011at org.apache.tomcat.websocket.WsSession.sendCloseMessage(WsSession.java:612)
>  Apr 10 14:34:26  #011at org.apache.tomcat.websocket.WsSession.onClose(WsSession.java:532)
>  Apr 10 14:34:26  #011at org.apache.tomcat.websocket.WsFrameBase.processDataControl(WsFrameBase.java:347)
>  Apr 10 14:34:26  #011at org.apache.tomcat.websocket.WsFrameBase.processData(WsFrameBase.java:289)
>  Apr 10 14:34:26  #011at org.apache.tomcat.websocket.WsFrameBase.processInputBuffer(WsFrameBase.java:133)
>  Apr 10 14:34:26  #011at org.apache.tomcat.websocket.server.WsFrameServer.onDataAvailable(WsFrameServer.java:82)
>  Apr 10 14:34:26  #011at org.apache.tomcat.websocket.server.WsFrameServer.doOnDataAvailable(WsFrameServer.java:171)
>  Apr 10 14:34:26  #011at org.apache.tomcat.websocket.server.WsFrameServer.notifyDataAvailable(WsFrameServer.java:151)
>  Apr 10 14:34:26  #011at org.apache.tomcat.websocket.server.WsHttpUpgradeHandler.upgradeDispatch(WsHttpUpgradeHandler.java:148)
>  Apr 10 14:34:26  #011at org.apache.coyote.http11.upgrade.UpgradeProcessorInternal.dispatch(UpgradeProcessorInternal.java:54)
>  Apr 10 14:34:26  #011at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:59)
>  Apr 10 14:34:26  #011at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868)
>  Apr 10 14:34:26  #011at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1594)
>  Apr 10 14:34:26  #011at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
>  Apr 10 14:34:26  #011at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
>  Apr 10 14:34:26  #011at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
>  Apr 10 14:34:26  #011at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
>  Apr 10 14:34:26  #011at java.base/java.lang.Thread.run(Thread.java:834)
>  Apr 10 14:34:26  #011Caused by: java.io.IOException: Broken pipe 
> {code}
> There already is condition that checks for EOFException in WicketEndpoint. Maybe it could
be extended to broken pipes?
> {code}
> 	@Override
> 	public void onError(Session session, Throwable t)
> 	{
> 		if (t instanceof EOFException)
> 		{
> 			LOG.debug("An error occurred in web socket connection with id : {}", session.getId(),
t);
> 		}
> 		else
> 		{
> 			LOG.error("An error occurred in web socket connection with id : {}", session.getId(),
t);
> 		}
> 	}
> {code}
> My only option at the moment is to completely turn off logging for WicketEndpoint.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Mime
View raw message