sentinel.go
func (s *Sentinel) Discover() error {
	addrs, err := s.SentinelAddrs()
	if err != nil {
		return err
	}
	s.mu.Lock()
	for _, addr := range addrs {
		if !stringInSlice(addr, s.Addrs) {
			s.Addrs = append(s.Addrs, addr)
		}
	}
	s.mu.Unlock()
	return nil
}
func (s *Sentinel) Discover() error {
	addrs, err := s.SentinelAddrs()
	if err != nil {
		return err
	}
	s.mu.Lock()
	for _, addr := range addrs {
		if !stringInSlice(addr, s.Addrs) {
			s.Addrs = append(s.Addrs, addr)
		}
	}
	s.mu.Unlock()
	return nil
}
func ( s * Sentinel ) Discover ( ) error { addrs , err := s . SentinelAddrs ( ) if err != nil { return err } s . mu . Lock ( ) for _ , addr := range addrs { if ! stringInSlice ( addr , s . Addrs ) { s . Addrs = append ( s . Addrs , addr ) } } s . mu . Unlock ( ) return nil }
// Discover allows to update list of known Sentinel addresses. From docs:
//
// A client may update its internal list of Sentinel nodes following this procedure:
// 1) Obtain a list of other Sentinels for this master using the command SENTINEL sentinels <master-name>.
// 2) Add every ip:port pair not already existing in our list at the end of the list.
Discover allows to update list of known Sentinel addresses . From docs : A client may update its internal list of Sentinel nodes following this procedure : 1 ) Obtain a list of other Sentinels for this master using the command SENTINEL sentinels <master - name > . 2 ) Add every ip : port pair not already existing in our list at the end of the list .