Files
wonderwall/internal/http/transport.go
Sindre Rødseth Hansen ca77435d6a feat(http): propagate traceparent for httpclient
Co-authored-by: tronghn <trong.huu.nguyen@nav.no>
2025-01-30 14:03:30 +01:00

28 lines
471 B
Go

package http
import (
"net/http"
"sync"
"time"
"go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp"
)
var (
defaultTransport *http.Transport
once sync.Once
)
func Transport() http.RoundTripper {
once.Do(func() {
t := http.DefaultTransport.(*http.Transport).Clone()
t.MaxIdleConns = 200
t.MaxIdleConnsPerHost = 100
t.IdleConnTimeout = 5 * time.Second
defaultTransport = t
})
return otelhttp.NewTransport(defaultTransport)
}