diff --git a/plugins/inputs/apache/apache.go b/plugins/inputs/apache/apache.go index a04d1bbb827ea4f8020286e784157d5cc5eca68f..1302e2d59e714766d2847041f9e9ea158a192f19 100644 --- a/plugins/inputs/apache/apache.go +++ b/plugins/inputs/apache/apache.go @@ -57,6 +57,8 @@ func (n *Apache) Description() string { } func (n *Apache) Gather(acc telegraf.Accumulator) error { + var wg sync.WaitGroup + if len(n.Urls) == 0 { n.Urls = []string{"http://localhost/server-status?auto"} } @@ -72,8 +74,6 @@ func (n *Apache) Gather(acc telegraf.Accumulator) error { n.client = client } - var wg sync.WaitGroup - wg.Add(len(n.Urls)) for _, u := range n.Urls { addr, err := url.Parse(u) if err != nil { @@ -81,6 +81,7 @@ func (n *Apache) Gather(acc telegraf.Accumulator) error { continue } + wg.Add(1) go func(addr *url.URL) { defer wg.Done() acc.AddError(n.gatherUrl(addr, acc))