Fix attempt to connect to an empty list of servers. (#9503)
This commit is contained in:
parent
ecf27ab956
commit
80829b3b5a
|
|
@ -2,6 +2,7 @@ package nsq_consumer
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
|
"fmt"
|
||||||
"sync"
|
"sync"
|
||||||
|
|
||||||
"github.com/influxdata/telegraf"
|
"github.com/influxdata/telegraf"
|
||||||
|
|
@ -134,15 +135,28 @@ func (n *NSQConsumer) Start(ac telegraf.Accumulator) error {
|
||||||
return nil
|
return nil
|
||||||
}))
|
}))
|
||||||
|
|
||||||
|
// For backward compatibility
|
||||||
|
if n.Server != "" {
|
||||||
|
n.Nsqd = append(n.Nsqd, n.Server)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Check if we have anything to connect to
|
||||||
|
if len(n.Nsqlookupd) == 0 && len(n.Nsqd) == 0 {
|
||||||
|
return fmt.Errorf("either 'nsqd' or 'nsqlookupd' needs to be specified")
|
||||||
|
}
|
||||||
|
|
||||||
if len(n.Nsqlookupd) > 0 {
|
if len(n.Nsqlookupd) > 0 {
|
||||||
err := n.consumer.ConnectToNSQLookupds(n.Nsqlookupd)
|
err := n.consumer.ConnectToNSQLookupds(n.Nsqlookupd)
|
||||||
if err != nil && err != nsq.ErrAlreadyConnected {
|
if err != nil && err != nsq.ErrAlreadyConnected {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
err := n.consumer.ConnectToNSQDs(append(n.Nsqd, n.Server))
|
|
||||||
if err != nil && err != nsq.ErrAlreadyConnected {
|
if len(n.Nsqd) > 0 {
|
||||||
return err
|
err := n.consumer.ConnectToNSQDs(n.Nsqd)
|
||||||
|
if err != nil && err != nsq.ErrAlreadyConnected {
|
||||||
|
return err
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
n.wg.Add(1)
|
n.wg.Add(1)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue