diff --git a/net/gclient/gclient_tracing_tracer.go b/net/gclient/gclient_tracing_tracer.go index 9b92d7fd5..c2e9ccbdc 100644 --- a/net/gclient/gclient_tracing_tracer.go +++ b/net/gclient/gclient_tracing_tracer.go @@ -73,9 +73,17 @@ func newClientTrace(ctx context.Context, span trace.Span, request *http.Request) func (ct *clientTracer) getConn(host string) {} func (ct *clientTracer) gotConn(info httptrace.GotConnInfo) { + remoteAddr := "" + if info.Conn.RemoteAddr() != nil { + remoteAddr = info.Conn.RemoteAddr().String() + } + localAddr := "" + if info.Conn.LocalAddr() != nil { + localAddr = info.Conn.LocalAddr().String() + } ct.span.SetAttributes( - attribute.String(tracingAttrHttpAddressRemote, info.Conn.RemoteAddr().String()), - attribute.String(tracingAttrHttpAddressLocal, info.Conn.LocalAddr().String()), + attribute.String(tracingAttrHttpAddressRemote, remoteAddr), + attribute.String(tracingAttrHttpAddressLocal, localAddr), ) }