use AddError everywhere (#2372)

This commit is contained in:
Patrick Hemmer
2017-04-24 14:13:26 -04:00
committed by Daniel Nelson
parent 801f6cb8a0
commit 06baf7cf78
95 changed files with 341 additions and 531 deletions

View File

@@ -35,24 +35,24 @@ func (r *Raindrops) Description() string {
func (r *Raindrops) Gather(acc telegraf.Accumulator) error {
var wg sync.WaitGroup
var outerr error
for _, u := range r.Urls {
addr, err := url.Parse(u)
if err != nil {
return fmt.Errorf("Unable to parse address '%s': %s", u, err)
acc.AddError(fmt.Errorf("Unable to parse address '%s': %s", u, err))
continue
}
wg.Add(1)
go func(addr *url.URL) {
defer wg.Done()
outerr = r.gatherUrl(addr, acc)
acc.AddError(r.gatherUrl(addr, acc))
}(addr)
}
wg.Wait()
return outerr
return nil
}
func (r *Raindrops) gatherUrl(addr *url.URL, acc telegraf.Accumulator) error {

View File

@@ -68,7 +68,7 @@ func TestRaindropsGeneratesMetrics(t *testing.T) {
var acc testutil.Accumulator
err := n.Gather(&acc)
err := acc.GatherError(n.Gather)
require.NoError(t, err)
fields := map[string]interface{}{