...
Package dnssrv
Overview ▹
Index ▹
type Lookup ¶
Lookup is a function that resolves a DNS SRV record to multiple addresses. It has the same signature as net.LookupSRV.
type Lookup func(service, proto, name string) (cname string, addrs []*net.SRV, err error)
type Subscriber ¶
Subscriber yields endpoints taken from the named DNS SRV record. The name is resolved on a fixed schedule. Priorities and weights are ignored.
type Subscriber struct {
// contains filtered or unexported fields
}
func NewSubscriber ¶
func NewSubscriber(
name string,
ttl time.Duration,
factory sd.Factory,
logger log.Logger,
) *Subscriber
NewSubscriber returns a DNS SRV subscriber.
func NewSubscriberDetailed ¶
func NewSubscriberDetailed(
name string,
refresh *time.Ticker,
lookup Lookup,
factory sd.Factory,
logger log.Logger,
) *Subscriber
NewSubscriberDetailed is the same as NewSubscriber, but allows users to provide an explicit lookup refresh ticker instead of a TTL, and specify the lookup function instead of using net.LookupSRV.
func (*Subscriber) Endpoints ¶
func (p *Subscriber) Endpoints() ([]endpoint.Endpoint, error)
Endpoints implements the Subscriber interface.
func (*Subscriber) Stop ¶
func (p *Subscriber) Stop()
Stop terminates the Subscriber.
ActiveGo 1.8