Reconfigure timeouts

This commit is contained in:
Ben Sarmiento
2024-01-26 13:51:48 +01:00
parent b72514c25e
commit 9e03cf6510
3 changed files with 10 additions and 9 deletions

View File

@@ -172,7 +172,7 @@ func (z *ZurgConfig) EnableDownloadCache() bool {
func (z *ZurgConfig) GetRealDebridTimeout() int { func (z *ZurgConfig) GetRealDebridTimeout() int {
if z.RealDebridTimeout == 0 { if z.RealDebridTimeout == 0 {
return 60 return 10
} }
return z.RealDebridTimeout return z.RealDebridTimeout
} }

View File

@@ -201,7 +201,7 @@ func (dl *Downloader) streamFileToResponse(torrent *intTor.Torrent, file *intTor
} }
} }
log.Debugf("Started serving file %s", unrestrict.Filename) log.Infof("Started serving file %s%s", unrestrict.Filename, rangeLog)
buf := make([]byte, cfg.GetNetworkBufferSize()) buf := make([]byte, cfg.GetNetworkBufferSize())
io.CopyBuffer(resp, download.Body, buf) io.CopyBuffer(resp, download.Body, buf)

View File

@@ -52,10 +52,8 @@ func (e *ApiErrorResponse) Error() string {
func NewHTTPClient(token string, maxRetries int, timeoutSecs int, ensureIPv6Host bool, cfg config.ConfigInterface, log *logutil.Logger) *HTTPClient { func NewHTTPClient(token string, maxRetries int, timeoutSecs int, ensureIPv6Host bool, cfg config.ConfigInterface, log *logutil.Logger) *HTTPClient {
client := HTTPClient{ client := HTTPClient{
bearerToken: token, bearerToken: token,
client: &http.Client{ client: &http.Client{},
Timeout: time.Duration(timeoutSecs) * time.Second, maxRetries: maxRetries,
},
maxRetries: maxRetries,
backoff: func(attempt int) time.Duration { backoff: func(attempt int) time.Duration {
maxDuration := 60 maxDuration := 60
backoff := int(math.Pow(2, float64(attempt))) backoff := int(math.Pow(2, float64(attempt)))
@@ -110,7 +108,9 @@ func NewHTTPClient(token string, maxRetries int, timeoutSecs int, ensureIPv6Host
log: log, log: log,
} }
var dialer proxy.Dialer = &net.Dialer{} var dialer proxy.Dialer = &net.Dialer{
Timeout: time.Duration(timeoutSecs) * time.Second,
}
if proxyURLString := cfg.GetProxy(); proxyURLString != "" { if proxyURLString := cfg.GetProxy(); proxyURLString != "" {
proxyURL, err := url.Parse(proxyURLString) proxyURL, err := url.Parse(proxyURLString)
if err != nil { if err != nil {
@@ -140,8 +140,9 @@ func NewHTTPClient(token string, maxRetries int, timeoutSecs int, ensureIPv6Host
} }
client.client.Transport = &http.Transport{ client.client.Transport = &http.Transport{
MaxIdleConns: maxConnections, ResponseHeaderTimeout: time.Duration(timeoutSecs) * time.Second,
MaxConnsPerHost: maxConnections, MaxIdleConns: 0,
MaxConnsPerHost: maxConnections,
DialContext: func(ctx context.Context, network, address string) (net.Conn, error) { DialContext: func(ctx context.Context, network, address string) (net.Conn, error) {
if ipv6Address, ok := client.ipv6.Get(address); ok { if ipv6Address, ok := client.ipv6.Get(address); ok {
return dialer.Dial(network, ipv6Address) return dialer.Dial(network, ipv6Address)