func()

in collector/collector.go [133:159]


func (rs resultStore) walkResults(
	remotes config.RemoteStore,
	currentDSCP *ip.DSCPValue,
	foreground bool,
	logger *log.Logger,
	walkerF ...resultWalker) {

	for target, r := range rs {
		remote, existsTarget := remotes[target]
		if !existsTarget {
			logger.Error("host exists in resultStore, but not in remoteStore",
				zap.String("host", target))
		}

		qos := *currentDSCP
		if remote.External {
			qos = ip.DSCPBeLow
		}

		for srcPort, rep := range r[(ip.GetDSCP).Pos(qos, logger)] {
			walkerF[0](rep, remote.Hostname, remote.Location, srcPort, foreground, logger)
		}
		if len(walkerF) > 1 {
			logger.Error("only one result walker function expected currently")
		}
	}
}