11package random
22
33import (
4- "context"
54 "fmt"
65 "math/rand"
76 "net/url"
@@ -10,7 +9,6 @@ import (
109 log "github.com/Sirupsen/logrus"
1110 "github.com/matt-deboer/mpp/pkg/locator"
1211 "github.com/matt-deboer/mpp/pkg/selector"
13- "github.com/prometheus/common/model"
1412)
1513
1614func init () {
@@ -61,22 +59,17 @@ func (s *Selector) Select(endpoints []*locator.PrometheusEndpoint) (err error) {
6159 for _ , endpoint := range endpoints {
6260 endpoint .Selected = false
6361 if endpoint .QueryAPI != nil {
64- value , err := endpoint . QueryAPI . Query ( context . TODO () , "prometheus_build_info" , time . Now () )
62+ scraped , err := locator . ScrapeMetric ( endpoint . Address , "prometheus_build_info" )
6563 if err != nil {
6664 log .Errorf ("Endpoint %v returned error: %v" , endpoint , err )
67- } else {
65+ endpoint .Error = err
66+ } else if endpoint .Viable () {
6867 if log .GetLevel () >= log .DebugLevel {
69- log .Debugf ("Endpoint %v returned value: %v" , endpoint , value )
70- }
71- if value .Type () == model .ValVector {
72- if len (value .String ()) > 0 {
73- endpoint .ComparisonMetricValue = value .String ()
74- endpoint .Selected = true
75- selected ++
76- }
77- } else {
78- log .Errorf ("Endpoint %v returned unexpected type: %v" , endpoint , value .Type ())
68+ log .Debugf ("Endpoint %v returned value: %v" , endpoint , scraped )
7969 }
70+ endpoint .ComparisonMetricValue = scraped .String ()
71+ endpoint .Selected = true
72+ selected ++
8073 }
8174 }
8275 }
0 commit comments