Fix review comments

Signed-off-by: rustyclock <rustyclock@protonmail.com>
This commit is contained in:
rustyclock 2020-10-03 08:58:41 +09:00
parent 014e2df99b
commit 9a50f9d6ec
No known key found for this signature in database
GPG Key ID: FB2B3735971D7E3F
3 changed files with 11 additions and 7 deletions

View File

@ -34,7 +34,7 @@ import (
var (
configFile = kingpin.Flag("config.file", "JSON exporter configuration file.").Default("config.yml").ExistingFile()
listenAddress = kingpin.Flag("web.listen-address", "The address to listen on for HTTP requests.").Default(":7979").String()
configCheck = kingpin.Flag("config.check", "If true validate the config file and then exit.").Default().Bool()
configCheck = kingpin.Flag("config.check", "If true validate the config file and then exit.").Default("false").Bool()
)
func Run() {
@ -58,7 +58,7 @@ func Run() {
}
configJson, err := json.Marshal(config)
if err != nil {
level.Error(logger).Log("msg", "Failed to marshal config to JOSN", "err", err) //nolint:errcheck
level.Error(logger).Log("msg", "Failed to marshal config to JSON", "err", err) //nolint:errcheck
}
level.Info(logger).Log("msg", "Loaded config file", "config", string(configJson)) //nolint:errcheck
@ -71,7 +71,7 @@ func Run() {
probeHandler(w, req, logger, config)
})
if err := http.ListenAndServe(*listenAddress, nil); err != nil {
level.Error(logger).Log("msg", "failed to start the server", "err", err) //nolint:errcheck
level.Error(logger).Log("msg", "Failed to start the server", "err", err) //nolint:errcheck
}
}

View File

@ -59,7 +59,6 @@ func LoadConfig(configPath string) (Config, error) {
for i := 0; i < len(config.Metrics); i++ {
if config.Metrics[i].Type == "" {
config.Metrics[i].Type = ValueScrape
//config.Metrics[i].Type = "DefaultScrapeType"
}
if config.Metrics[i].Help == "" {
config.Metrics[i].Help = config.Metrics[i].Name

View File

@ -17,6 +17,7 @@ import (
"context"
"errors"
"fmt"
"io"
"io/ioutil"
"math"
"net/http"
@ -66,7 +67,7 @@ func SanitizeValue(v *jsonpath.Result) (float64, error) {
func parseValue(bytes []byte) (float64, error) {
value, err := strconv.ParseFloat(string(bytes), 64)
if err != nil {
return -1.0, fmt.Errorf("failed to parse value as float;value:<%s>", bytes)
return -1.0, fmt.Errorf("failed to parse value as float; value: %q; err: %w", bytes, err)
}
return value, nil
}
@ -156,9 +157,13 @@ func FetchJson(ctx context.Context, logger log.Logger, endpoint string, config c
if err != nil {
return nil, err
}
defer resp.Body.Close()
if resp.StatusCode != 200 {
defer func() {
io.Copy(ioutil.Discard, resp.Body)
resp.Body.Close()
}()
if resp.StatusCode/100 != 2 {
return nil, errors.New(resp.Status)
}