code: func (e *Etcd) Records(state request.Request, exact bool) ([]msg.Service, error) {
  	name := state.Name()
  
  	path, star := msg.PathWithWildcard(name, e.PathPrefix)
  	r, err := e.get(path, true)
  	if err != nil {
  		return nil, err
  	}
  	segments := strings.Split(msg.Path(name, e.PathPrefix), "/")
  	switch {
  	case exact && r.Node.Dir:
  		return nil, nil
  	case r.Node.Dir:
  		return e.loopNodes(r.Node.Nodes, segments, star, nil)
  	default:
  		return e.loopNodes([]*etcdc.Node{r.Node}, segments, false, nil)
  	}
  }
docs: // Records looks up records in etcd. If exact is true, it will lookup just this
  // name. This is used when find matches when completing SRV lookups for instance.