func (s *Serf) DefaultQueryTimeout() time.Duration {
	n := s.memberlist.NumMembers()
	timeout := s.config.MemberlistConfig.GossipInterval
	timeout *= time.Duration(s.config.QueryTimeoutMult)
	timeout *= time.Duration(math.Ceil(math.Log10(float64(n + 1))))
	return timeout
}
DefaultQueryTimeout returns the default timeout value for a query
Computed as GossipInterval * QueryTimeoutMult * log(N+1)
package serf
import (
	"math"
	"regexp"
	"sync"
	"time"
)
type QueryParam struct {
	FilterNodes []string
	FilterTags map[string]string
	RequestAck bool
	Timeout time.Duration
}