Skip to content

Invalid error in logs when application disconnects #21877

@dr1rrb

Description

@dr1rrb

Current behavior 🐛

When application disconnects from the "Dev Server", in the logs we see:

[DEBUG][21:18:01.42]       System.Net.WebSockets.WebSocketException (0x80004005): The remote party closed the WebSocket connection without completing the close handshake.
[DEBUG][21:18:01.42]        ---> Microsoft.AspNetCore.Connections.ConnectionResetException: IstniejĄce po�Ączenie zosta�o gwa�townie zamkni©te przez zdalnego hosta.
[DEBUG][21:18:01.43]        ---> System.Net.Sockets.SocketException (10054): IstniejĄce po�Ączenie zosta�o gwa�townie zamkni©te przez zdalnego hosta.
[DEBUG][21:18:01.43]          --- End of inner exception stack trace ---
[DEBUG][21:18:01.43]          at System.IO.Pipelines.Pipe.GetReadAsyncResult()
[DEBUG][21:18:01.43]          at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.Http1UpgradeMessageBody.ReadAsyncInternalAwaited(ValueTask`1 readTask, CancellationToken cancellationToken)
[DEBUG][21:18:01.43]          at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource<TResult>.GetResult(Int16 token)
[DEBUG][21:18:01.43]          at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpRequestStream.ReadAsyncInternal(Memory`1 destination, CancellationToken cancellationToken)
[DEBUG][21:18:01.43]          at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource<TResult>.GetResult(Int16 token)
[DEBUG][21:18:01.43]          at System.IO.Stream.ReadAtLeastAsyncCore(Memory`1 buffer, Int32 minimumBytes, Boolean throwOnEndOfStream, CancellationToken cancellationToken)
[DEBUG][21:18:01.43]          at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource<TResult>.GetResult(Int16 token)
[DEBUG][21:18:01.43]          at System.Net.WebSockets.ManagedWebSocket.EnsureBufferContainsAsync(Int32 minimumRequiredBytes, CancellationToken cancellationToken)
[DEBUG][21:18:01.43]          at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token)
[DEBUG][21:18:01.43]          at System.Net.WebSockets.ManagedWebSocket.ReceiveAsyncPrivate[TResult](Memory`1 payloadBuffer, CancellationToken cancellationToken)
[DEBUG][21:18:01.43]          at System.Net.WebSockets.ManagedWebSocket.ReceiveAsyncPrivate[TResult](Memory`1 payloadBuffer, CancellationToken cancellationToken)
[DEBUG][21:18:01.43]          at System.Threading.Tasks.ValueTask`1.ValueTaskSourceAsTask.<>c.<.cctor>b__4_0(Object state)
[DEBUG][21:18:01.43]       --- End of stack trace from previous location ---
[DEBUG][21:18:01.43]          at Uno.UI.RemoteControl.Helpers.WebSocketHelper.ReadFrame(WebSocket socket, CancellationToken token) in C:\a\1\s\src\Uno.UI.RemoteControl\Helpers\WebSocketHelper.cs:line 32
[DEBUG][21:18:01.43]          at Uno.UI.RemoteControl.Host.RemoteControlServer.RunAsync(WebSocket socket, CancellationToken ct) in C:\a\1\s\src\Uno.UI.RemoteControl.Host\RemoteControlServer.cs:line 190
[DEBUG][21:18:01.43]          at Uno.UI.RemoteControl.Host.RemoteControlExtensions.<>c__DisplayClass0_0.<<UseRemoteControlServer>b__1>d.MoveNext() in C:\a\1\s\src\Uno.UI.RemoteControl.Host\RemoteControlExtensions.cs:line 74
[DEBUG][21:18:01.43]       --- End of stack trace from previous location ---
[DEBUG][21:18:01.43]          at Microsoft.AspNetCore.Builder.RouterMiddleware.Invoke(HttpContext httpContext)
[DEBUG][21:18:01.43]          at Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddlewareImpl.Invoke(HttpContext context)

Expected behavior 🎯

An exception should logged only if the disconnection is dropped unexpectedly (i.e. not when the application is being closed)

How to reproduce it (as minimally and precisely as possible) 🔬

No response

Workaround 🛠️

No response

Renderer 🎨

  • Skia
  • Native

Affected platforms 📱💻🖥️

No response

Uno.Sdk version (and other relevant versions) 📦

No response

IDE version 🧑‍💻

No response

Anything else we need to know? 💬

No response

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions