TUN-3948: Log error when retrying connection
This commit is contained in:
parent
4e33281337
commit
e9c2afec56
|
@ -244,7 +244,7 @@ func selectNextProtocol(
|
|||
// on error returns a flag indicating if error can be retried
|
||||
func ServeTunnel(
|
||||
ctx context.Context,
|
||||
connLong *zerolog.Logger,
|
||||
connLog *zerolog.Logger,
|
||||
credentialManager *reconnectCredentialManager,
|
||||
config *TunnelConfig,
|
||||
addr *net.TCPAddr,
|
||||
|
@ -273,6 +273,7 @@ func ServeTunnel(
|
|||
|
||||
edgeConn, err := edgediscovery.DialEdge(ctx, dialTimeout, config.EdgeTLSConfigs[protocol], addr)
|
||||
if err != nil {
|
||||
connLog.Err(err).Msg("Unable to establish connection with Cloudflare edge")
|
||||
return err, true
|
||||
}
|
||||
connectedFuse := &connectedFuse{
|
||||
|
@ -284,7 +285,7 @@ func ServeTunnel(
|
|||
connOptions := config.ConnectionOptions(edgeConn.LocalAddr().String(), uint8(backoff.retries))
|
||||
err = ServeHTTP2(
|
||||
ctx,
|
||||
connLong,
|
||||
connLog,
|
||||
config,
|
||||
edgeConn,
|
||||
connOptions,
|
||||
|
@ -296,7 +297,7 @@ func ServeTunnel(
|
|||
} else {
|
||||
err = ServeH2mux(
|
||||
ctx,
|
||||
connLong,
|
||||
connLog,
|
||||
credentialManager,
|
||||
config,
|
||||
edgeConn,
|
||||
|
@ -311,28 +312,29 @@ func ServeTunnel(
|
|||
if err != nil {
|
||||
switch err := err.(type) {
|
||||
case connection.DupConnRegisterTunnelError:
|
||||
connLog.Err(err).Msg("Unable to establish connection.")
|
||||
// don't retry this connection anymore, let supervisor pick a new address
|
||||
return err, false
|
||||
case connection.ServerRegisterTunnelError:
|
||||
connLong.Err(err).Msg("Register tunnel error from server side")
|
||||
connLog.Err(err).Msg("Register tunnel error from server side")
|
||||
// Don't send registration error return from server to Sentry. They are
|
||||
// logged on server side
|
||||
if incidents := config.IncidentLookup.ActiveIncidents(); len(incidents) > 0 {
|
||||
connLong.Error().Msg(activeIncidentsMsg(incidents))
|
||||
connLog.Error().Msg(activeIncidentsMsg(incidents))
|
||||
}
|
||||
return err.Cause, !err.Permanent
|
||||
case ReconnectSignal:
|
||||
connLong.Info().
|
||||
connLog.Info().
|
||||
Uint8(connection.LogFieldConnIndex, connIndex).
|
||||
Msgf("Restarting connection due to reconnect signal in %s", err.Delay)
|
||||
err.DelayBeforeReconnect()
|
||||
return err, true
|
||||
default:
|
||||
if err == context.Canceled {
|
||||
connLong.Debug().Err(err).Msgf("Serve tunnel error")
|
||||
connLog.Debug().Err(err).Msgf("Serve tunnel error")
|
||||
return err, false
|
||||
}
|
||||
connLong.Err(err).Msgf("Serve tunnel error")
|
||||
connLog.Err(err).Msgf("Serve tunnel error")
|
||||
_, permanent := err.(unrecoverableError)
|
||||
return err, !permanent
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue