diff --git a/source/common/network/connection_impl.cc b/source/common/network/connection_impl.cc index b5d3472ad8f57..edbd5adbe34a8 100644 --- a/source/common/network/connection_impl.cc +++ b/source/common/network/connection_impl.cc @@ -827,6 +827,7 @@ void ServerConnectionImpl::onTransportSocketConnectTimeout() { stream_info_.setConnectionTerminationDetails(kTransportSocketConnectTimeoutTerminationDetails); closeConnectionImmediately(); transport_socket_timeout_stat_->inc(); + failure_reason_ = "connect timeout"; } ClientConnectionImpl::ClientConnectionImpl( diff --git a/test/common/network/connection_impl_test.cc b/test/common/network/connection_impl_test.cc index a7169ee003047..b666ded243ef4 100644 --- a/test/common/network/connection_impl_test.cc +++ b/test/common/network/connection_impl_test.cc @@ -419,6 +419,7 @@ TEST_P(ConnectionImplTest, SetServerTransportSocketTimeout) { mock_timer->invokeCallback(); EXPECT_THAT(stream_info_.connectionTerminationDetails(), Optional(HasSubstr("transport socket timeout"))); + EXPECT_EQ(server_connection->transportFailureReason(), "connect timeout"); } TEST_P(ConnectionImplTest, SetServerTransportSocketTimeoutAfterConnect) {