Commit 05952688 by bergquist

tech: avoid using http.DefaultClient

parent 03354bc4
......@@ -4,9 +4,11 @@ import (
"bytes"
"fmt"
"io/ioutil"
"net"
"net/http"
"net/url"
"path"
"time"
"github.com/grafana/grafana/pkg/util"
)
......@@ -17,6 +19,18 @@ type WebdavUploader struct {
password string
}
var netTransport = &http.Transport{
Dial: (&net.Dialer{
Timeout: 60 * time.Second,
}).Dial,
TLSHandshakeTimeout: 5 * time.Second,
}
var netClient = &http.Client{
Timeout: time.Second * 60,
Transport: netTransport,
}
func (u *WebdavUploader) Upload(pa string) (string, error) {
url, _ := url.Parse(u.url)
url.Path = path.Join(url.Path, util.GetRandomString(20)+".png")
......@@ -28,7 +42,7 @@ func (u *WebdavUploader) Upload(pa string) (string, error) {
req.SetBasicAuth(u.username, u.password)
}
res, err := http.DefaultClient.Do(req)
res, err := netClient.Do(req)
if err != nil {
return "", err
......
......@@ -5,7 +5,9 @@ import (
"context"
"fmt"
"io/ioutil"
"net"
"net/http"
"time"
"golang.org/x/net/context/ctxhttp"
......@@ -22,6 +24,17 @@ type Webhook struct {
HttpHeader map[string]string
}
var netTransport = &http.Transport{
Dial: (&net.Dialer{
Timeout: 30 * time.Second,
}).Dial,
TLSHandshakeTimeout: 5 * time.Second,
}
var netClient = &http.Client{
Timeout: time.Second * 30,
Transport: netTransport,
}
var (
webhookQueue chan *Webhook
webhookLog log.Logger
......@@ -68,7 +81,7 @@ func sendWebRequestSync(ctx context.Context, webhook *Webhook) error {
request.Header.Set(k, v)
}
resp, err := ctxhttp.Do(ctx, http.DefaultClient, request)
resp, err := ctxhttp.Do(ctx, netClient, request)
if err != nil {
return err
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment