434 references to ConnectionEndReason
InMemory.FunctionalTests (188)
BadHttpRequestTests.cs (16)
32
ConnectionEndReason
.InvalidRequestLine);
43
ConnectionEndReason
.InvalidHttpVersion);
54
ConnectionEndReason
.InvalidRequestHeaders);
85
ConnectionEndReason
.InvalidRequestHeaders);
97
ConnectionEndReason
.InvalidRequestHeaders);
109
ConnectionEndReason
.InvalidRequestHeaders);
121
ConnectionEndReason
.InvalidRequestHeaders,
132
ConnectionEndReason
.InvalidRequestHeaders);
141
ConnectionEndReason
.InvalidRequestHeaders);
152
ConnectionEndReason
.InvalidRequestHeaders);
199
ConnectionEndReason
.InvalidRequestHeaders);
209
ConnectionEndReason
.InvalidRequestHeaders);
253
m => MetricsAssert.Equal(
ConnectionEndReason
.InvalidRequestLine, m.Tags));
276
m => MetricsAssert.Equal(
ConnectionEndReason
.InvalidHttpVersion, m.Tags));
286
ConnectionEndReason
.InvalidRequestLine);
316
private async Task TestBadRequest(string request, string expectedResponseStatusCode, string expectedExceptionMessage,
ConnectionEndReason
reason, string expectedAllowHeader = null)
ChunkedRequestTests.cs (1)
970
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.UnexpectedEndOfRequestContent, m.Tags));
ConnectionLimitTests.cs (1)
166
Assert.Equal(10, connectionErrors.Single(e => e.Key == KestrelMetrics.GetErrorType(
ConnectionEndReason
.MaxConcurrentConnectionsExceeded)).Count());
Http2\Http2ConnectionTests.cs (98)
740
AssertConnectionEndReason(
ConnectionEndReason
.MaxFrameLengthExceeded);
1504
AssertConnectionEndReason(
ConnectionEndReason
.InvalidStreamId);
1519
AssertConnectionEndReason(
ConnectionEndReason
.InvalidStreamId);
1535
AssertConnectionEndReason(
ConnectionEndReason
.InvalidDataPadding);
1551
AssertConnectionEndReason(
ConnectionEndReason
.InvalidDataPadding);
1567
AssertConnectionEndReason(
ConnectionEndReason
.InvalidFrameLength);
1583
AssertConnectionEndReason(
ConnectionEndReason
.UnexpectedFrame);
1598
AssertConnectionEndReason(
ConnectionEndReason
.InvalidStreamId);
1616
AssertConnectionEndReason(
ConnectionEndReason
.FrameAfterStreamClose);
1642
AssertConnectionEndReason(
ConnectionEndReason
.FrameAfterStreamClose);
1726
_connection.Abort(new ConnectionAbortedException(),
ConnectionEndReason
.AbortedByApp);
1727
AssertConnectionEndReason(
ConnectionEndReason
.AbortedByApp);
1796
AssertConnectionEndReason(
ConnectionEndReason
.StreamResetLimitExceeded);
1856
AssertConnectionEndReason(
ConnectionEndReason
.FrameAfterStreamClose);
1880
AssertConnectionEndReason(
ConnectionEndReason
.FlowControlWindowExceeded);
1911
AssertConnectionEndReason(
ConnectionEndReason
.FlowControlWindowExceeded);
2615
AssertConnectionEndReason(
ConnectionEndReason
.InvalidStreamId);
2631
AssertConnectionEndReason(
ConnectionEndReason
.InvalidStreamId);
2659
AssertConnectionEndReason(
ConnectionEndReason
.InvalidStreamId);
2678
AssertConnectionEndReason(
ConnectionEndReason
.FrameAfterStreamClose);
2702
AssertConnectionEndReason(
ConnectionEndReason
.InvalidStreamId);
2721
AssertConnectionEndReason(
ConnectionEndReason
.InvalidDataPadding);
2737
AssertConnectionEndReason(
ConnectionEndReason
.InvalidFrameLength);
2755
AssertConnectionEndReason(
ConnectionEndReason
.InvalidDataPadding);
2808
AssertConnectionEndReason(
ConnectionEndReason
.InvalidDataPadding);
2825
AssertConnectionEndReason(
ConnectionEndReason
.UnexpectedFrame);
2841
AssertConnectionEndReason(
ConnectionEndReason
.StreamSelfDependency);
2857
AssertConnectionEndReason(
ConnectionEndReason
.ErrorReadingHeaders);
2887
AssertConnectionEndReason(
ConnectionEndReason
.ErrorReadingHeaders);
2905
AssertConnectionEndReason(
ConnectionEndReason
.InvalidRequestHeaders);
2925
AssertConnectionEndReason(
ConnectionEndReason
.MissingStreamEnd);
2941
AssertConnectionEndReason(
ConnectionEndReason
.InvalidRequestHeaders);
2958
expectedEndReason:
ConnectionEndReason
.InvalidRequestHeaders);
2975
expectedEndReason:
ConnectionEndReason
.InvalidRequestHeaders);
2985
expectedEndReason:
ConnectionEndReason
.InvalidRequestHeaders);
3013
expectedEndReason:
ConnectionEndReason
.InvalidRequestHeaders);
3016
private async Task HEADERS_Received_InvalidHeaderFields_ConnectionError(IEnumerable<KeyValuePair<string, string>> headers, string expectedErrorMessage,
ConnectionEndReason
expectedEndReason)
3049
AssertConnectionEndReason(
ConnectionEndReason
.InvalidStreamId);
3082
expectedEndReason:
ConnectionEndReason
.MaxRequestHeadersTotalSizeExceeded);
3104
expectedEndReason:
ConnectionEndReason
.MaxRequestHeaderCountExceeded);
3121
expectedEndReason:
ConnectionEndReason
.InvalidRequestHeaders);
3136
expectedEndReason:
ConnectionEndReason
.InvalidRequestHeaders);
3153
expectedEndReason:
ConnectionEndReason
.InvalidRequestHeaders);
3170
expectedEndReason:
ConnectionEndReason
.InvalidRequestHeaders);
3258
AssertConnectionEndReason(
ConnectionEndReason
.InvalidStreamId);
3274
AssertConnectionEndReason(
ConnectionEndReason
.InvalidStreamId);
3292
AssertConnectionEndReason(
ConnectionEndReason
.InvalidFrameLength);
3309
AssertConnectionEndReason(
ConnectionEndReason
.UnexpectedFrame);
3325
AssertConnectionEndReason(
ConnectionEndReason
.StreamSelfDependency);
3583
AssertConnectionEndReason(
ConnectionEndReason
.InvalidStreamId);
3599
AssertConnectionEndReason(
ConnectionEndReason
.InvalidStreamId);
3615
AssertConnectionEndReason(
ConnectionEndReason
.InvalidStreamId);
3636
AssertConnectionEndReason(
ConnectionEndReason
.InvalidFrameLength);
3653
AssertConnectionEndReason(
ConnectionEndReason
.UnexpectedFrame);
3681
AssertConnectionEndReason(
ConnectionEndReason
.FrameAfterStreamClose);
3708
AssertConnectionEndReason(
ConnectionEndReason
.FrameAfterStreamClose);
3916
AssertConnectionEndReason(
ConnectionEndReason
.InvalidStreamId);
3944
AssertConnectionEndReason(
ConnectionEndReason
.InvalidSettings);
3961
AssertConnectionEndReason(
ConnectionEndReason
.UnexpectedFrame);
3979
AssertConnectionEndReason(
ConnectionEndReason
.InvalidFrameLength);
4000
AssertConnectionEndReason(
ConnectionEndReason
.InvalidFrameLength);
4026
AssertConnectionEndReason(
ConnectionEndReason
.InvalidSettings);
4209
AssertConnectionEndReason(
ConnectionEndReason
.UnexpectedFrame);
4250
AssertConnectionEndReason(
ConnectionEndReason
.UnexpectedFrame);
4266
AssertConnectionEndReason(
ConnectionEndReason
.InvalidStreamId);
4286
AssertConnectionEndReason(
ConnectionEndReason
.InvalidFrameLength);
4560
AssertConnectionEndReason(
ConnectionEndReason
.InvalidStreamId);
4577
AssertConnectionEndReason(
ConnectionEndReason
.UnexpectedFrame);
4593
AssertConnectionEndReason(
ConnectionEndReason
.InvalidStreamId);
4610
AssertConnectionEndReason(
ConnectionEndReason
.UnexpectedFrame);
4630
AssertConnectionEndReason(
ConnectionEndReason
.InvalidFrameLength);
4646
AssertConnectionEndReason(
ConnectionEndReason
.InvalidWindowUpdateSize);
4663
AssertConnectionEndReason(
ConnectionEndReason
.InvalidWindowUpdateSize);
4679
AssertConnectionEndReason(
ConnectionEndReason
.InvalidStreamId);
4698
AssertConnectionEndReason(
ConnectionEndReason
.InvalidWindowUpdateSize);
5047
AssertConnectionEndReason(
ConnectionEndReason
.UnexpectedFrame);
5064
AssertConnectionEndReason(
ConnectionEndReason
.ErrorReadingHeaders);
5083
AssertConnectionEndReason(
ConnectionEndReason
.InvalidRequestHeaders);
5108
AssertConnectionEndReason(
ConnectionEndReason
.InvalidStreamId);
5205
AssertConnectionEndReason(
ConnectionEndReason
.UnexpectedFrame);
5232
AssertConnectionEndReason(
ConnectionEndReason
.InvalidStreamId);
5247
AssertConnectionEndReason(
ConnectionEndReason
.ConnectionReset);
5283
_connection.Abort(new ConnectionAbortedException(),
ConnectionEndReason
.AbortedByApp);
5288
AssertConnectionEndReason(
ConnectionEndReason
.AbortedByApp);
5358
_connection.StopProcessingNextRequest(
ConnectionEndReason
.AppShutdownTimeout);
5381
AssertConnectionEndReason(
ConnectionEndReason
.AppShutdownTimeout);
5391
_connection.StopProcessingNextRequest(
ConnectionEndReason
.AppShutdownTimeout);
5429
AssertConnectionEndReason(
ConnectionEndReason
.AppShutdownTimeout);
5452
AssertConnectionEndReason(
ConnectionEndReason
.ConnectionReset);
5472
AssertConnectionEndReason(
ConnectionEndReason
.IOError);
5491
AssertConnectionEndReason(
ConnectionEndReason
.OtherError);
5878
AssertConnectionEndReason(
ConnectionEndReason
.FrameAfterStreamClose);
5895
AssertConnectionEndReason(
ConnectionEndReason
.InvalidStreamId);
5913
AssertConnectionEndReason(
ConnectionEndReason
.InvalidStreamId);
5969
AssertConnectionEndReason(
ConnectionEndReason
.FrameAfterStreamClose);
5973
AssertConnectionEndReason(
ConnectionEndReason
.InvalidStreamId);
6008
AssertConnectionEndReason(
ConnectionEndReason
.InvalidHttpVersion);
6023
AssertConnectionEndReason(
ConnectionEndReason
.InvalidHandshake);
Http2\Http2KeepAliveTests.cs (1)
206
AssertConnectionEndReason(
ConnectionEndReason
.KeepAliveTimeout);
Http2\Http2StreamTests.cs (5)
41
AssertConnectionEndReason(
ConnectionEndReason
.InvalidRequestHeaders);
2236
AssertConnectionEndReason(
ConnectionEndReason
.ErrorWritingHeaders);
2587
AssertConnectionEndReason(
ConnectionEndReason
.ErrorWritingHeaders);
5835
AssertConnectionEndReason(
ConnectionEndReason
.InvalidRequestHeaders);
5855
AssertConnectionEndReason(
ConnectionEndReason
.InvalidRequestHeaders);
Http2\Http2TestBase.cs (1)
433
internal void AssertConnectionEndReason(
ConnectionEndReason
expectedEndReason)
Http2\Http2TimeoutTests.cs (14)
102
AssertConnectionEndReason(
ConnectionEndReason
.KeepAliveTimeout);
197
AssertConnectionEndReason(
ConnectionEndReason
.RequestHeadersTimeout);
307
AssertConnectionEndReason(
ConnectionEndReason
.FrameAfterStreamClose);
311
AssertConnectionEndReason(
ConnectionEndReason
.FrameAfterStreamClose);
391
AssertConnectionEndReason(
ConnectionEndReason
.MinResponseDataRate);
446
AssertConnectionEndReason(
ConnectionEndReason
.MinResponseDataRate);
498
AssertConnectionEndReason(
ConnectionEndReason
.MinResponseDataRate);
552
AssertConnectionEndReason(
ConnectionEndReason
.MinResponseDataRate);
618
AssertConnectionEndReason(
ConnectionEndReason
.MinResponseDataRate);
665
AssertConnectionEndReason(
ConnectionEndReason
.MinRequestBodyDataRate);
716
AssertConnectionEndReason(
ConnectionEndReason
.MinRequestBodyDataRate);
783
AssertConnectionEndReason(
ConnectionEndReason
.MinRequestBodyDataRate);
851
AssertConnectionEndReason(
ConnectionEndReason
.MinRequestBodyDataRate);
992
AssertConnectionEndReason(
ConnectionEndReason
.MinRequestBodyDataRate);
Http2\TlsTests.cs (1)
80
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.InsufficientTlsVersion, m.Tags));
Http3\Http3ConnectionTests.cs (8)
248
MetricsAssert.Equal(
ConnectionEndReason
.InvalidSettings, Http3Api.ConnectionTags);
268
MetricsAssert.Equal(
ConnectionEndReason
.StreamCreationError, Http3Api.ConnectionTags);
290
MetricsAssert.Equal(
ConnectionEndReason
.UnexpectedFrame, Http3Api.ConnectionTags);
315
MetricsAssert.Equal(
ConnectionEndReason
.ClosedCriticalStream, Http3Api.ConnectionTags);
360
MetricsAssert.Equal(
ConnectionEndReason
.ClosedCriticalStream, Http3Api.ConnectionTags);
389
MetricsAssert.Equal(
ConnectionEndReason
.InvalidFrameLength, Http3Api.ConnectionTags);
795
MetricsAssert.Equal(
ConnectionEndReason
.ClosedCriticalStream, Http3Api.ConnectionTags);
821
MetricsAssert.Equal(
ConnectionEndReason
.ClosedCriticalStream, Http3Api.ConnectionTags);
Http3\Http3StreamTests.cs (3)
2038
MetricsAssert.Equal(
ConnectionEndReason
.UnexpectedFrame, Http3Api.ConnectionTags);
2114
MetricsAssert.Equal(
ConnectionEndReason
.UnexpectedFrame, Http3Api.ConnectionTags);
2144
MetricsAssert.Equal(
ConnectionEndReason
.UnexpectedFrame, Http3Api.ConnectionTags);
Http3\Http3TimeoutTests.cs (9)
31
MetricsAssert.Equal(
ConnectionEndReason
.KeepAliveTimeout, Http3Api.ConnectionTags);
48
MetricsAssert.Equal(
ConnectionEndReason
.KeepAliveTimeout, Http3Api.ConnectionTags);
77
MetricsAssert.Equal(
ConnectionEndReason
.KeepAliveTimeout, Http3Api.ConnectionTags);
123
MetricsAssert.Equal(
ConnectionEndReason
.KeepAliveTimeout, Http3Api.ConnectionTags);
372
MetricsAssert.Equal(
ConnectionEndReason
.MinRequestBodyDataRate, Http3Api.ConnectionTags);
416
MetricsAssert.Equal(
ConnectionEndReason
.MinResponseDataRate, Http3Api.ConnectionTags);
570
MetricsAssert.Equal(
ConnectionEndReason
.MinRequestBodyDataRate, Http3Api.ConnectionTags);
625
MetricsAssert.Equal(
ConnectionEndReason
.MinRequestBodyDataRate, Http3Api.ConnectionTags);
681
MetricsAssert.Equal(
ConnectionEndReason
.MinRequestBodyDataRate, Http3Api.ConnectionTags);
KeepAliveTimeoutTests.cs (2)
53
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.KeepAliveTimeout, m.Tags));
201
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.KeepAliveTimeout, m.Tags));
KestrelMetricsTests.cs (7)
34
foreach (
var
reason in Enum.GetValues<
ConnectionEndReason
>())
198
AssertDuration(m, "127.0.0.1", localPort: 0, "tcp", "ipv4", KestrelMetrics.Http11, error: KestrelMetrics.GetErrorType(
ConnectionEndReason
.InvalidBodyReaderState));
313
AssertDuration(m, "127.0.0.1", localPort: 0, "tcp", "ipv4", KestrelMetrics.Http11, error: KestrelMetrics.GetErrorType(
ConnectionEndReason
.AppShutdownTimeout));
427
AssertDuration(m, "127.0.0.1", localPort: 0, "tcp", "ipv4", KestrelMetrics.Http11, error: KestrelMetrics.GetErrorType(
ConnectionEndReason
.AbortedByApp));
663
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => AssertDuration(m, "127.0.0.1", localPort: 0, "tcp", "ipv4", KestrelMetrics.Http2, error: KestrelMetrics.GetErrorType(
ConnectionEndReason
.AppShutdownTimeout)));
906
AssertDuration(m, "127.0.0.1", localPort: 0, "tcp", "ipv4", httpVersion: null, tlsProtocolVersion: null, error: KestrelMetrics.GetErrorType(
ConnectionEndReason
.TlsHandshakeFailed));
MaxRequestBodySizeTests.cs (2)
155
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.MaxRequestBodySizeExceeded, m.Tags));
409
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.MaxRequestBodySizeExceeded, m.Tags));
MaxRequestLineSizeTests.cs (1)
80
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.InvalidRequestLine, m.Tags));
RequestBodyTimeoutTests.cs (3)
93
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.MinRequestBodyDataRate, m.Tags));
146
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.ServerTimeout, m.Tags));
220
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.MinRequestBodyDataRate, m.Tags));
RequestHeaderLimitsTests.cs (2)
115
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.MaxRequestHeadersTotalSizeExceeded, m.Tags));
144
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.MaxRequestHeaderCountExceeded, m.Tags));
RequestHeadersTimeoutTests.cs (3)
49
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.RequestHeadersTimeout, m.Tags));
114
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.RequestHeadersTimeout, m.Tags));
148
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.RequestHeadersTimeout, m.Tags));
RequestTests.cs (2)
1229
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.UnexpectedEndOfRequestContent, m.Tags));
2282
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.TlsNotSupported, m.Tags));
ResponseTests.cs (6)
210
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.WriteCanceled, m.Tags));
988
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.ResponseContentLengthMismatch, m.Tags));
1026
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.ResponseContentLengthMismatch, m.Tags));
2901
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.ErrorAfterStartingResponse, m.Tags));
2946
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.ErrorAfterStartingResponse, m.Tags));
3029
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.AbortedByApp, m.Tags));
src\Servers\Kestrel\shared\test\MetricsAssert.cs (2)
12
public static void Equal(
ConnectionEndReason
expectedReason, string errorType)
17
public static void Equal(
ConnectionEndReason
expectedReason, IReadOnlyDictionary<string, object> tags)
Microsoft.AspNetCore.Server.Kestrel.Core (226)
Internal\Http\Http1ChunkedEncodingMessageBody.cs (1)
143
KestrelMetrics.AddConnectionEndReason(_context.MetricsContext,
ConnectionEndReason
.UnexpectedEndOfRequestContent);
Internal\Http\Http1Connection.cs (23)
126
_http1Output.Abort(ServerOptions.FinOnError ? new ConnectionAbortedException(CoreStrings.ConnectionAbortedByClient) : null!,
ConnectionEndReason
.TransportCompleted);
132
_http1Output.Abort(new ConnectionAbortedException(CoreStrings.ConnectionAbortedByClient),
ConnectionEndReason
.TransportCompleted);
139
public void Abort(ConnectionAbortedException abortReason,
ConnectionEndReason
reason)
149
Abort(new ConnectionAbortedException(CoreStrings.ConnectionAbortedByApplication),
ConnectionEndReason
.AbortedByApp);
157
public void StopProcessingNextRequest(
ConnectionEndReason
reason)
163
internal override void DisableKeepAlive(
ConnectionEndReason
reason)
177
KestrelMetrics.AddConnectionEndReason(MetricsContext,
ConnectionEndReason
.RequestHeadersTimeout);
185
KestrelMetrics.AddConnectionEndReason(MetricsContext,
ConnectionEndReason
.MinRequestBodyDataRate);
726
KestrelMetrics.AddConnectionEndReason(MetricsContext,
ConnectionEndReason
.InvalidRequestHeaders);
737
KestrelMetrics.AddConnectionEndReason(MetricsContext,
ConnectionEndReason
.InvalidRequestHeaders);
770
KestrelMetrics.AddConnectionEndReason(MetricsContext,
ConnectionEndReason
.InvalidRequestHeaders);
779
KestrelMetrics.AddConnectionEndReason(MetricsContext,
ConnectionEndReason
.InvalidRequestHeaders);
861
KestrelMetrics.AddConnectionEndReason(MetricsContext,
ConnectionEndReason
.OtherError);
914
internal static
ConnectionEndReason
GetConnectionEndReason(Microsoft.AspNetCore.Http.BadHttpRequestException ex)
923
return
ConnectionEndReason
.InvalidHttpVersion;
927
return
ConnectionEndReason
.InvalidRequestLine;
940
return
ConnectionEndReason
.InvalidRequestHeaders;
942
return
ConnectionEndReason
.MaxRequestHeadersTotalSizeExceeded;
944
return
ConnectionEndReason
.MaxRequestHeaderCountExceeded;
946
return
ConnectionEndReason
.TlsNotSupported;
948
return
ConnectionEndReason
.UnexpectedEndOfRequestContent;
952
return
ConnectionEndReason
.OtherError;
1011
var
reason = GetConnectionEndReason(ex);
Internal\Http\Http1ContentLengthMessageBody.cs (1)
249
_context.DisableKeepAlive(
ConnectionEndReason
.MaxRequestBodySizeExceeded);
Internal\Http\Http1MessageBody.cs (5)
75
_context.StopProcessingNextRequest(
ConnectionEndReason
.InvalidBodyReaderState);
110
_context.StopProcessingNextRequest(
ConnectionEndReason
.InvalidBodyReaderState);
120
_context.DisableKeepAlive(
ConnectionEndReason
.MaxRequestBodySizeExceeded);
212
KestrelMetrics.AddConnectionEndReason(context.MetricsContext,
ConnectionEndReason
.InvalidRequestHeaders);
233
KestrelMetrics.AddConnectionEndReason(_context.MetricsContext,
ConnectionEndReason
.UnexpectedEndOfRequestContent);
Internal\Http\Http1OutputProducer.cs (1)
462
public void Abort(ConnectionAbortedException error,
ConnectionEndReason
reason)
Internal\Http\HttpProtocol.cs (9)
666
DisableKeepAlive(
ConnectionEndReason
.RequestNoKeepAlive);
875
DisableKeepAlive(
ConnectionEndReason
.ResponseContentLengthMismatch);
928
DisableKeepAlive(
ConnectionEndReason
.ResponseContentLengthMismatch);
1047
DisableKeepAlive(
ConnectionEndReason
.ErrorAfterStartingResponse);
1154
DisableKeepAlive(
ConnectionEndReason
.ResponseNoKeepAlive);
1165
DisableKeepAlive(
ConnectionEndReason
.ResponseNoKeepAlive);
1201
DisableKeepAlive(
ConnectionEndReason
.ResponseNoKeepAlive);
1234
DisableKeepAlive(
ConnectionEndReason
.ResponseNoKeepAlive);
1429
internal virtual void DisableKeepAlive(
ConnectionEndReason
reason)
Internal\Http\IHttpOutputAborter.cs (1)
10
void Abort(ConnectionAbortedException abortReason,
ConnectionEndReason
reason);
Internal\Http2\FlowControl\InputFlowControl.cs (1)
56
throw new Http2ConnectionErrorException(CoreStrings.Http2ErrorFlowControlWindowExceeded, Http2ErrorCode.FLOW_CONTROL_ERROR,
ConnectionEndReason
.FlowControlWindowExceeded);
Internal\Http2\Http2Connection.cs (63)
143
private
ConnectionEndReason
_gracefulCloseReason;
229
SetConnectionErrorCode(hasActiveStreams ?
ConnectionEndReason
.ConnectionReset :
ConnectionEndReason
.TransportCompleted, Http2ErrorCode.NO_ERROR);
235
private void SetConnectionErrorCode(
ConnectionEndReason
reason, Http2ErrorCode errorCode)
242
public void Abort(ConnectionAbortedException ex,
ConnectionEndReason
reason)
247
public void Abort(ConnectionAbortedException ex, Http2ErrorCode errorCode,
ConnectionEndReason
reason)
258
public void StopProcessingNextRequest(
ConnectionEndReason
reason)
264
Abort(new ConnectionAbortedException(CoreStrings.BadRequest_RequestHeadersTimeout), Http2ErrorCode.INTERNAL_ERROR,
ConnectionEndReason
.RequestHeadersTimeout);
272
Abort(new ConnectionAbortedException(CoreStrings.BadRequest_RequestBodyTimeout), Http2ErrorCode.INTERNAL_ERROR,
ConnectionEndReason
.MinRequestBodyDataRate);
275
public void StopProcessingNextRequest(bool serverInitiated,
ConnectionEndReason
reason)
290
var
reason =
ConnectionEndReason
.Unset;
301
reason =
ConnectionEndReason
.TransportCompleted;
361
reason =
ConnectionEndReason
.TransportCompleted;
378
throw new Http2ConnectionErrorException(CoreStrings.Http2ErrorKeepAliveTimeout, Http2ErrorCode.INTERNAL_ERROR,
ConnectionEndReason
.KeepAliveTimeout);
396
reason =
ConnectionEndReason
.ConnectionReset;
400
reason =
ConnectionEndReason
.TransportCompleted;
409
reason =
ConnectionEndReason
.IOError;
430
reason =
ConnectionEndReason
.ErrorReadingHeaders;
437
reason =
ConnectionEndReason
.OtherError;
513
throw new Http2ConnectionErrorException(CoreStrings.FormatHttp2ErrorMinTlsVersion(tlsFeature.Protocol), Http2ErrorCode.INADEQUATE_SECURITY,
ConnectionEndReason
.InsufficientTlsVersion);
598
SetConnectionErrorCode(
ConnectionEndReason
.InvalidHttpVersion, Http2ErrorCode.PROTOCOL_ERROR);
613
throw new Http2ConnectionErrorException(CoreStrings.Http2ErrorInvalidPreface, Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.InvalidHandshake);
685
throw new Http2ConnectionErrorException(CoreStrings.FormatHttp2ErrorStreamIdEven(_incomingFrame.Type, _incomingFrame.StreamId), Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.InvalidStreamId);
695
Http2FrameType.PUSH_PROMISE => throw new Http2ConnectionErrorException(CoreStrings.Http2ErrorPushPromiseReceived, Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.UnexpectedFrame),
718
throw new Http2ConnectionErrorException(CoreStrings.FormatHttp2ErrorPaddingTooLong(_incomingFrame.Type), Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.InvalidDataPadding);
740
throw new Http2ConnectionErrorException(CoreStrings.FormatHttp2ErrorStreamHalfClosedRemote(_incomingFrame.Type, stream.StreamId), Http2ErrorCode.STREAM_CLOSED,
ConnectionEndReason
.FrameAfterStreamClose);
757
throw new Http2ConnectionErrorException(CoreStrings.FormatHttp2ErrorStreamClosed(_incomingFrame.Type, _incomingFrame.StreamId), Http2ErrorCode.STREAM_CLOSED,
ConnectionEndReason
.FrameAfterStreamClose);
762
return new Http2ConnectionErrorException(CoreStrings.FormatHttp2ErrorStreamAborted(_incomingFrame.Type, stream.StreamId), Http2ErrorCode.STREAM_CLOSED,
ConnectionEndReason
.FrameAfterStreamClose);
767
return new Http2ConnectionErrorException(CoreStrings.FormatHttp2ErrorStreamIdZero(_incomingFrame.Type), Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.InvalidStreamId);
772
return new Http2ConnectionErrorException(CoreStrings.FormatHttp2ErrorStreamIdNotZero(_incomingFrame.Type), Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.InvalidStreamId);
778
return new Http2ConnectionErrorException(CoreStrings.FormatHttp2ErrorHeadersInterleaved(_incomingFrame.Type, _incomingFrame.StreamId, _currentHeadersStream.StreamId), Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.UnexpectedFrame);
783
return new Http2ConnectionErrorException(CoreStrings.FormatHttp2ErrorUnexpectedFrameLength(_incomingFrame.Type, expectedLength), Http2ErrorCode.FRAME_SIZE_ERROR,
ConnectionEndReason
.InvalidFrameLength);
800
throw new Http2ConnectionErrorException(CoreStrings.FormatHttp2ErrorPaddingTooLong(_incomingFrame.Type), Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.InvalidDataPadding);
805
throw new Http2ConnectionErrorException(CoreStrings.FormatHttp2ErrorStreamSelfDependency(_incomingFrame.Type, _incomingFrame.StreamId), Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.StreamSelfDependency);
825
throw new Http2ConnectionErrorException(CoreStrings.FormatHttp2ErrorStreamHalfClosedRemote(_incomingFrame.Type, stream.StreamId), Http2ErrorCode.STREAM_CLOSED,
ConnectionEndReason
.FrameAfterStreamClose);
831
throw new Http2ConnectionErrorException(CoreStrings.Http2ErrorHeadersWithTrailersNoEndStream, Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.MissingStreamEnd);
850
throw new Http2ConnectionErrorException(CoreStrings.FormatHttp2ErrorStreamClosed(_incomingFrame.Type, _incomingFrame.StreamId), Http2ErrorCode.STREAM_CLOSED,
ConnectionEndReason
.InvalidStreamId);
928
throw new Http2ConnectionErrorException(CoreStrings.FormatHttp2ErrorStreamSelfDependency(_incomingFrame.Type, _incomingFrame.StreamId), Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.StreamSelfDependency);
995
throw new Http2ConnectionErrorException(CoreStrings.Http2ErrorSettingsAckLengthNotZero, Http2ErrorCode.FRAME_SIZE_ERROR,
ConnectionEndReason
.InvalidFrameLength);
1003
throw new Http2ConnectionErrorException(CoreStrings.Http2ErrorSettingsLengthNotMultipleOfSix, Http2ErrorCode.FRAME_SIZE_ERROR,
ConnectionEndReason
.InvalidFrameLength);
1037
throw new Http2ConnectionErrorException(CoreStrings.Http2ErrorInitialWindowSizeInvalid, Http2ErrorCode.FLOW_CONTROL_ERROR,
ConnectionEndReason
.InvalidSettings);
1059
throw new Http2ConnectionErrorException(CoreStrings.FormatHttp2ErrorSettingsParameterOutOfRange(ex.Parameter), errorCode,
ConnectionEndReason
.InvalidSettings);
1110
StopProcessingNextRequest(serverInitiated: false,
ConnectionEndReason
.ClientGoAway);
1147
throw new Http2ConnectionErrorException(CoreStrings.Http2ErrorWindowUpdateIncrementZero, Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.InvalidWindowUpdateSize);
1154
throw new Http2ConnectionErrorException(CoreStrings.Http2ErrorWindowUpdateSizeInvalid, Http2ErrorCode.FLOW_CONTROL_ERROR,
ConnectionEndReason
.InvalidWindowUpdateSize);
1188
throw new Http2ConnectionErrorException(CoreStrings.Http2ErrorContinuationWithNoHeaders, Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.UnexpectedFrame);
1335
Abort(new ConnectionAbortedException(CoreStrings.Http2ConnectionFaulted), Http2ErrorCode.ENHANCE_YOUR_CALM,
ConnectionEndReason
.StreamResetLimitExceeded);
1337
throw new Http2ConnectionErrorException(CoreStrings.Http2ConnectionFaulted, Http2ErrorCode.ENHANCE_YOUR_CALM,
ConnectionEndReason
.StreamResetLimitExceeded);
1396
throw new Http2ConnectionErrorException(CoreStrings.FormatHttp2ErrorStreamIdle(_incomingFrame.Type, _incomingFrame.StreamId), Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.InvalidStreamId);
1452
throw new Http2ConnectionErrorException(CoreStrings.FormatHttp2ErrorStreamClosed(_incomingFrame.Type, _incomingFrame.StreamId), Http2ErrorCode.STREAM_CLOSED,
ConnectionEndReason
.FrameAfterStreamClose);
1596
throw new Http2ConnectionErrorException(CoreStrings.BadRequest_HeadersExceedMaxTotalSize, Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.MaxRequestHeadersTotalSizeExceeded);
1658
throw new Http2ConnectionErrorException(bre.Message, Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.MaxRequestHeaderCountExceeded);
1663
throw new Http2ConnectionErrorException(bre.Message, Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.InvalidRequestHeaders);
1667
throw new Http2ConnectionErrorException(CoreStrings.BadRequest_MalformedRequestInvalidHeaders, Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.InvalidRequestHeaders);
1678
throw new Http2ConnectionErrorException(CoreStrings.HttpErrorConnectionSpecificHeaderField, Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.InvalidRequestHeaders);
1689
throw new Http2ConnectionErrorException(CoreStrings.HttpErrorTrailerNameUppercase, Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.InvalidRequestHeaders);
1693
throw new Http2ConnectionErrorException(CoreStrings.HttpErrorHeaderNameUppercase, Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.InvalidRequestHeaders);
1722
throw new Http2ConnectionErrorException(CoreStrings.HttpErrorPseudoHeaderFieldAfterRegularHeaders, Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.InvalidRequestHeaders);
1728
throw new Http2ConnectionErrorException(CoreStrings.HttpErrorTrailersContainPseudoHeaderField, Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.InvalidRequestHeaders);
1737
throw new Http2ConnectionErrorException(CoreStrings.HttpErrorUnknownPseudoHeaderField, Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.InvalidRequestHeaders);
1744
throw new Http2ConnectionErrorException(CoreStrings.HttpErrorResponsePseudoHeaderField, Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.InvalidRequestHeaders);
1751
throw new Http2ConnectionErrorException(CoreStrings.HttpErrorDuplicatePseudoHeaderField, Http2ErrorCode.PROTOCOL_ERROR,
ConnectionEndReason
.InvalidRequestHeaders);
Internal\Http2\Http2FrameWriter.cs (6)
172
_http2Connection.Abort(ex, Http2ErrorCode.INTERNAL_ERROR,
ConnectionEndReason
.OutputQueueSizeExceeded);
352
const
ConnectionEndReason
reason =
ConnectionEndReason
.InvalidWindowUpdateSize;
559
_http2Connection.Abort(new ConnectionAbortedException(ex.Message, ex), Http2ErrorCode.INTERNAL_ERROR,
ConnectionEndReason
.ErrorWritingHeaders);
600
_http2Connection.Abort(new ConnectionAbortedException(ex.Message, ex), Http2ErrorCode.INTERNAL_ERROR,
ConnectionEndReason
.ErrorWritingHeaders);
1131
_http2Connection.Abort(new ConnectionAbortedException("HTTP/2 connection exceeded the outgoing flow control maximum queue size."), Http2ErrorCode.INTERNAL_ERROR,
ConnectionEndReason
.FlowControlQueueSizeExceeded);
Internal\Http2\Http2OutputProducer.cs (1)
248
void IHttpOutputAborter.Abort(ConnectionAbortedException abortReason,
ConnectionEndReason
reason)
Internal\Http3\Http3Connection.cs (22)
48
private
ConnectionEndReason
_gracefulCloseReason;
107
public void StopProcessingNextRequest(
ConnectionEndReason
reason)
110
public void StopProcessingNextRequest(bool serverInitiated,
ConnectionEndReason
reason)
157
public void Abort(ConnectionAbortedException ex,
ConnectionEndReason
reason)
162
public void Abort(ConnectionAbortedException ex, Http3ErrorCode errorCode,
ConnectionEndReason
reason)
244
connection.OnStreamConnectionError(new Http3ConnectionErrorException(CoreStrings.Http3ErrorControlStreamClosed, Http3ErrorCode.ClosedCriticalStream,
ConnectionEndReason
.ClosedCriticalStream));
322
OnStreamConnectionError(new Http3ConnectionErrorException(CoreStrings.ConnectionTimedBecauseResponseMininumDataRateNotSatisfied, Http3ErrorCode.InternalError,
ConnectionEndReason
.MinResponseDataRate));
344
ConnectionEndReason
reason =
ConnectionEndReason
.Unset;
471
reason =
ConnectionEndReason
.ConnectionReset;
475
reason =
ConnectionEndReason
.TransportCompleted;
485
reason =
ConnectionEndReason
.IOError;
491
reason =
ConnectionEndReason
.OtherError;
502
reason =
ConnectionEndReason
.OtherError;
545
if (reason ==
ConnectionEndReason
.Unset && _gracefulCloseReason !=
ConnectionEndReason
.Unset)
580
Abort(CreateConnectionAbortError(error, clientAbort), Http3ErrorCode.InternalError,
ConnectionEndReason
.OtherError);
742
var connectionError = new Http3ConnectionErrorException(CoreStrings.Http3ControlStreamErrorInitializingOutbound, Http3ErrorCode.ClosedCriticalStream,
ConnectionEndReason
.ClosedCriticalStream);
746
Abort(new ConnectionAbortedException(connectionError.Message, connectionError), connectionError.ErrorCode,
ConnectionEndReason
.ClosedCriticalStream);
908
Abort(new ConnectionAbortedException(CoreStrings.BadRequest_RequestHeadersTimeout),
ConnectionEndReason
.RequestHeadersTimeout);
916
Abort(new ConnectionAbortedException(CoreStrings.BadRequest_RequestBodyTimeout),
ConnectionEndReason
.MinRequestBodyDataRate);
924
Abort(new ConnectionAbortedException(CoreStrings.ConnectionAbortedByClient), Http3ErrorCodeOrNoError,
ConnectionEndReason
.TransportCompleted);
Internal\Http3\Http3ConnectionErrorException.cs (2)
10
public Http3ConnectionErrorException(string message, Http3ErrorCode errorCode,
ConnectionEndReason
reason)
18
public
ConnectionEndReason
Reason { get; }
Internal\Http3\Http3ControlStream.cs (10)
211
throw new Http3ConnectionErrorException(CoreStrings.FormatHttp3ControlStreamErrorMultipleInboundStreams("control"), Http3ErrorCode.StreamCreationError,
ConnectionEndReason
.StreamCreationError);
220
throw new Http3ConnectionErrorException(CoreStrings.FormatHttp3ControlStreamErrorMultipleInboundStreams("encoder"), Http3ErrorCode.StreamCreationError,
ConnectionEndReason
.StreamCreationError);
229
throw new Http3ConnectionErrorException(CoreStrings.FormatHttp3ControlStreamErrorMultipleInboundStreams("decoder"), Http3ErrorCode.StreamCreationError,
ConnectionEndReason
.StreamCreationError);
334
throw new Http3ConnectionErrorException(CoreStrings.FormatHttp3ErrorUnsupportedFrameOnControlStream(incomingFrame.FormattedType), Http3ErrorCode.UnexpectedFrame,
ConnectionEndReason
.UnexpectedFrame);
354
throw new Http3ConnectionErrorException(CoreStrings.FormatHttp3ControlStreamFrameTooLarge(http3RawFrame.FormattedType), Http3ErrorCode.FrameError,
ConnectionEndReason
.InvalidFrameLength);
366
throw new Http3ConnectionErrorException(CoreStrings.Http3ErrorControlStreamMultipleSettingsFrames, Http3ErrorCode.UnexpectedFrame,
ConnectionEndReason
.UnexpectedFrame);
406
throw new Http3ConnectionErrorException(message, Http3ErrorCode.SettingsError,
ConnectionEndReason
.InvalidSettings);
432
_context.Connection.StopProcessingNextRequest(serverInitiated: false,
ConnectionEndReason
.ClientGoAway);
489
throw new Http3ConnectionErrorException(CoreStrings.FormatHttp3ControlStreamFrameTooLarge(Http3Formatting.ToFormattedType(incomingFrame.Type)), Http3ErrorCode.FrameError,
ConnectionEndReason
.InvalidFrameLength);
498
throw new Http3ConnectionErrorException(message, Http3ErrorCode.MissingSettings,
ConnectionEndReason
.InvalidSettings);
Internal\Http3\Http3OutputProducer.cs (1)
108
void IHttpOutputAborter.Abort(ConnectionAbortedException abortReason,
ConnectionEndReason
reason)
Internal\Http3\Http3Stream.cs (5)
788
CoreStrings.FormatHttp3ErrorUnsupportedFrameOnRequestStream(incomingFrame.FormattedType), Http3ErrorCode.UnexpectedFrame,
ConnectionEndReason
.UnexpectedFrame),
791
CoreStrings.FormatHttp3ErrorUnsupportedFrameOnServer(incomingFrame.FormattedType), Http3ErrorCode.UnexpectedFrame,
ConnectionEndReason
.UnexpectedFrame),
811
throw new Http3ConnectionErrorException(CoreStrings.FormatHttp3StreamErrorFrameReceivedAfterTrailers(Http3Formatting.ToFormattedType(Http3FrameType.Headers)), Http3ErrorCode.UnexpectedFrame,
ConnectionEndReason
.UnexpectedFrame);
919
throw new Http3ConnectionErrorException(CoreStrings.Http3StreamErrorDataReceivedBeforeHeaders, Http3ErrorCode.UnexpectedFrame,
ConnectionEndReason
.UnexpectedFrame);
927
throw new Http3ConnectionErrorException(message, Http3ErrorCode.UnexpectedFrame,
ConnectionEndReason
.UnexpectedFrame);
Internal\HttpConnection.cs (6)
114
using var shutdownRegistration = connectionLifetimeNotificationFeature?.ConnectionClosedRequested.Register(state => ((HttpConnection)state!).StopProcessingNextRequest(
ConnectionEndReason
.GracefulAppShutdown), this);
153
private void StopProcessingNextRequest(
ConnectionEndReason
reason)
191
private void Abort(ConnectionAbortedException ex,
ConnectionEndReason
reason)
281
_requestProcessor!.StopProcessingNextRequest(
ConnectionEndReason
.KeepAliveTimeout);
291
Abort(new ConnectionAbortedException(CoreStrings.ConnectionTimedBecauseResponseMininumDataRateNotSatisfied),
ConnectionEndReason
.MinResponseDataRate);
295
Abort(new ConnectionAbortedException(CoreStrings.ConnectionTimedOutByServer),
ConnectionEndReason
.ServerTimeout);
Internal\Infrastructure\ConnectionMetricsContext.cs (1)
18
public
ConnectionEndReason
? ConnectionEndReason { get; set; }
Internal\Infrastructure\KestrelMetrics.cs (58)
149
AddConnectionEndReason(metricsContext,
ConnectionEndReason
.MaxConcurrentConnectionsExceeded);
420
public static void AddConnectionEndReason(IConnectionMetricsTagsFeature? feature,
ConnectionEndReason
reason)
422
Debug.Assert(reason !=
ConnectionEndReason
.Unset);
433
public static void AddConnectionEndReason(ConnectionMetricsContext? context,
ConnectionEndReason
reason, bool overwrite = false)
435
Debug.Assert(reason !=
ConnectionEndReason
.Unset);
459
internal static string? GetErrorType(
ConnectionEndReason
reason)
465
internal static bool TryGetErrorType(
ConnectionEndReason
reason, [NotNullWhen(true)]out string? errorTypeValue)
469
ConnectionEndReason
.Unset => null, // Not an error
470
ConnectionEndReason
.ClientGoAway => null, // Not an error
471
ConnectionEndReason
.TransportCompleted => null, // Not an error
472
ConnectionEndReason
.GracefulAppShutdown => null, // Not an error
473
ConnectionEndReason
.RequestNoKeepAlive => null, // Not an error
474
ConnectionEndReason
.ResponseNoKeepAlive => null, // Not an error
475
ConnectionEndReason
.ErrorAfterStartingResponse => "error_after_starting_response",
476
ConnectionEndReason
.ConnectionReset => "connection_reset",
477
ConnectionEndReason
.FlowControlWindowExceeded => "flow_control_window_exceeded",
478
ConnectionEndReason
.KeepAliveTimeout => "keep_alive_timeout",
479
ConnectionEndReason
.InsufficientTlsVersion => "insufficient_tls_version",
480
ConnectionEndReason
.InvalidHandshake => "invalid_handshake",
481
ConnectionEndReason
.InvalidStreamId => "invalid_stream_id",
482
ConnectionEndReason
.FrameAfterStreamClose => "frame_after_stream_close",
483
ConnectionEndReason
.UnknownStream => "unknown_stream",
484
ConnectionEndReason
.UnexpectedFrame => "unexpected_frame",
485
ConnectionEndReason
.InvalidFrameLength => "invalid_frame_length",
486
ConnectionEndReason
.InvalidDataPadding => "invalid_data_padding",
487
ConnectionEndReason
.InvalidRequestHeaders => "invalid_request_headers",
488
ConnectionEndReason
.StreamResetLimitExceeded => "stream_reset_limit_exceeded",
489
ConnectionEndReason
.InvalidWindowUpdateSize => "invalid_window_update_size",
490
ConnectionEndReason
.StreamSelfDependency => "stream_self_dependency",
491
ConnectionEndReason
.InvalidSettings => "invalid_settings",
492
ConnectionEndReason
.MissingStreamEnd => "missing_stream_end",
493
ConnectionEndReason
.MaxFrameLengthExceeded => "max_frame_length_exceeded",
494
ConnectionEndReason
.ErrorReadingHeaders => "error_reading_headers",
495
ConnectionEndReason
.ErrorWritingHeaders => "error_writing_headers",
496
ConnectionEndReason
.OtherError => "other_error",
497
ConnectionEndReason
.InvalidHttpVersion => "invalid_http_version",
498
ConnectionEndReason
.RequestHeadersTimeout => "request_headers_timeout",
499
ConnectionEndReason
.MinRequestBodyDataRate => "min_request_body_data_rate",
500
ConnectionEndReason
.MinResponseDataRate => "min_response_data_rate",
501
ConnectionEndReason
.FlowControlQueueSizeExceeded => "flow_control_queue_size_exceeded",
502
ConnectionEndReason
.OutputQueueSizeExceeded => "output_queue_size_exceeded",
503
ConnectionEndReason
.ClosedCriticalStream => "closed_critical_stream",
504
ConnectionEndReason
.AbortedByApp => "aborted_by_app",
505
ConnectionEndReason
.WriteCanceled => "write_canceled",
506
ConnectionEndReason
.InvalidBodyReaderState => "invalid_body_reader_state",
507
ConnectionEndReason
.ServerTimeout => "server_timeout",
508
ConnectionEndReason
.StreamCreationError => "stream_creation_error",
509
ConnectionEndReason
.IOError => "io_error",
510
ConnectionEndReason
.AppShutdownTimeout => "app_shutdown_timeout",
511
ConnectionEndReason
.TlsHandshakeFailed => "tls_handshake_failed",
512
ConnectionEndReason
.InvalidRequestLine => "invalid_request_line",
513
ConnectionEndReason
.TlsNotSupported => "tls_not_supported",
514
ConnectionEndReason
.MaxRequestBodySizeExceeded => "max_request_body_size_exceeded",
515
ConnectionEndReason
.UnexpectedEndOfRequestContent => "unexpected_end_of_request_content",
516
ConnectionEndReason
.MaxConcurrentConnectionsExceeded => "max_concurrent_connections_exceeded",
517
ConnectionEndReason
.MaxRequestHeadersTotalSizeExceeded => "max_request_headers_total_size_exceeded",
518
ConnectionEndReason
.MaxRequestHeaderCountExceeded => "max_request_header_count_exceeded",
519
ConnectionEndReason
.ResponseContentLengthMismatch => "response_content_length_mismatch",
Internal\Infrastructure\PipeWriterHelpers\TimingPipeFlusher.cs (1)
95
outputAborter.Abort(new ConnectionAbortedException(CoreStrings.ConnectionOrStreamAbortedByCancellationToken, ex),
ConnectionEndReason
.WriteCanceled);
Internal\Infrastructure\TransportConnectionManager.cs (1)
83
ConnectionEndReason
.AppShutdownTimeout, overwrite: true);
Internal\IRequestProcessor.cs (2)
12
void StopProcessingNextRequest(
ConnectionEndReason
reason);
17
void Abort(ConnectionAbortedException ex,
ConnectionEndReason
reason);
Middleware\HttpsConnectionMiddleware.cs (1)
257
KestrelMetrics.AddConnectionEndReason(metricsTagsFeature,
ConnectionEndReason
.TlsHandshakeFailed);
src\Shared\ServerInfrastructure\Http2\Http2ConnectionErrorException.cs (2)
10
public Http2ConnectionErrorException(string message, Http2ErrorCode errorCode,
ConnectionEndReason
reason)
18
public
ConnectionEndReason
Reason { get; }
src\Shared\ServerInfrastructure\Http2\Http2FrameReader.cs (2)
54
throw new Http2ConnectionErrorException(SharedStrings.FormatHttp2ErrorFrameOverLimit(payloadLength, maxFrameSize), Http2ErrorCode.FRAME_SIZE_ERROR,
ConnectionEndReason
.MaxFrameLengthExceeded);
86
SharedStrings.FormatHttp2ErrorUnexpectedFrameLength(frame.Type, expectedLength: extendedHeaderLength), Http2ErrorCode.FRAME_SIZE_ERROR,
ConnectionEndReason
.InvalidFrameLength);
Microsoft.AspNetCore.Server.Kestrel.Core.Tests (15)
Http1\Http1ConnectionTests.cs (10)
252
_http1Connection.StopProcessingNextRequest(
ConnectionEndReason
.AppShutdownTimeout);
570
_http1Connection.StopProcessingNextRequest(
ConnectionEndReason
.AppShutdownTimeout);
655
_http1Connection.StopProcessingNextRequest(
ConnectionEndReason
.AppShutdownTimeout);
678
_http1Connection.Abort(new ConnectionAbortedException(),
ConnectionEndReason
.AbortedByApp);
700
_http1Connection.Abort(new ConnectionAbortedException(),
ConnectionEndReason
.AbortedByApp);
715
_http1Connection.Abort(new ConnectionAbortedException(),
ConnectionEndReason
.AbortedByApp);
760
_http1Connection.Abort(new ConnectionAbortedException(),
ConnectionEndReason
.AbortedByApp);
778
_http1Connection.Abort(new ConnectionAbortedException(),
ConnectionEndReason
.AbortedByApp);
790
_http1Connection.Abort(new ConnectionAbortedException(),
ConnectionEndReason
.AbortedByApp);
804
_http1Connection.Abort(new ConnectionAbortedException(),
ConnectionEndReason
.AbortedByApp);
Http1\Http1OutputProducerTests.cs (3)
129
outputProducer.Abort(null,
ConnectionEndReason
.AbortedByApp);
133
outputProducer.Abort(null,
ConnectionEndReason
.AbortedByApp);
137
Assert.Equal(
ConnectionEndReason
.AbortedByApp, metricsContext.ConnectionEndReason);
src\Servers\Kestrel\shared\test\MetricsAssert.cs (2)
12
public static void Equal(
ConnectionEndReason
expectedReason, string errorType)
17
public static void Equal(
ConnectionEndReason
expectedReason, IReadOnlyDictionary<string, object> tags)
Sockets.FunctionalTests (5)
src\Servers\Kestrel\shared\test\MetricsAssert.cs (2)
12
public static void Equal(
ConnectionEndReason
expectedReason, string errorType)
17
public static void Equal(
ConnectionEndReason
expectedReason, IReadOnlyDictionary<string, object> tags)
src\Servers\Kestrel\test\FunctionalTests\RequestTests.cs (1)
789
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.AbortedByApp, m.Tags));
src\Servers\Kestrel\test\FunctionalTests\ResponseTests.cs (2)
601
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.MinResponseDataRate, m.Tags));
849
Assert.Collection(connectionDuration.GetMeasurementSnapshot(), m => MetricsAssert.Equal(
ConnectionEndReason
.MinResponseDataRate, m.Tags));