Skip to content

Commit 9060633

Browse files
Log when closing connection due to timeout (#2722)
1 parent 1358d5a commit 9060633

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

src/Microsoft.AspNetCore.SignalR.Core/HubConnectionContext.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -502,6 +502,7 @@ private void CheckClientTimeout()
502502
{
503503
if (!_receivedMessageThisInterval)
504504
{
505+
Log.ClientTimeout(_logger, TimeSpan.FromTicks(_clientTimeoutInterval));
505506
Abort();
506507
}
507508

@@ -560,6 +561,9 @@ private static class Log
560561
private static readonly Action<ILogger, Exception> _abortFailed =
561562
LoggerMessage.Define(LogLevel.Trace, new EventId(8, "AbortFailed"), "Abort callback failed.");
562563

564+
private static readonly Action<ILogger, int, Exception> _clientTimeout =
565+
LoggerMessage.Define<int>(LogLevel.Debug, new EventId(9, "ClientTimeout"), "Client timeout ({ClientTimeout}ms) elapsed without receiving a message from the client. Closing connection.");
566+
563567
public static void HandshakeComplete(ILogger logger, string hubProtocol)
564568
{
565569
_handshakeComplete(logger, hubProtocol, null);
@@ -599,6 +603,11 @@ public static void AbortFailed(ILogger logger, Exception exception)
599603
{
600604
_abortFailed(logger, exception);
601605
}
606+
607+
public static void ClientTimeout(ILogger logger, TimeSpan timeout)
608+
{
609+
_clientTimeout(logger, (int)timeout.TotalMilliseconds, null);
610+
}
602611
}
603612
}
604613
}

0 commit comments

Comments
 (0)