Close connectionts properly to prevent piling

This commit is contained in:
Blerim Sheqa 2017-12-20 12:48:06 +01:00
parent 55cd46c738
commit fd5d3e93b3
3 changed files with 8 additions and 0 deletions

View File

@ -160,6 +160,8 @@ func (es *Eventstream) Run() error {
logp.Err("Error connecting to API: %v", responseErr) logp.Err("Error connecting to API: %v", responseErr)
} }
defer response.Body.Close()
select { select {
case <-es.done: case <-es.done:
return nil return nil

View File

@ -5,6 +5,7 @@ import (
"errors" "errors"
"net/http" "net/http"
"net/url" "net/url"
"time"
"github.com/elastic/beats/libbeat/logp" "github.com/elastic/beats/libbeat/logp"
) )
@ -12,6 +13,8 @@ import (
func requestURL(bt *Icingabeat, method string, URL *url.URL) (*http.Response, error) { func requestURL(bt *Icingabeat, method string, URL *url.URL) (*http.Response, error) {
transport := &http.Transport{ transport := &http.Transport{
TLSClientConfig: &tls.Config{InsecureSkipVerify: bt.config.SkipSSLVerify}, TLSClientConfig: &tls.Config{InsecureSkipVerify: bt.config.SkipSSLVerify},
MaxIdleConns: 10,
IdleConnTimeout: 30 * time.Second,
} }
client := &http.Client{ client := &http.Client{
@ -37,6 +40,7 @@ func requestURL(bt *Icingabeat, method string, URL *url.URL) (*http.Response, er
switch response.StatusCode { switch response.StatusCode {
case 401: case 401:
err = errors.New("Authentication failed for user " + bt.config.User) err = errors.New("Authentication failed for user " + bt.config.User)
defer response.Body.Close()
} }
return response, err return response, err

View File

@ -128,6 +128,8 @@ func (sp *Statuspoller) Run() error {
logp.Err("Error connecting to API: %v", responseErr) logp.Err("Error connecting to API: %v", responseErr)
} }
defer response.Body.Close()
select { select {
case <-sp.done: case <-sp.done:
return nil return nil