func()

in experiments/client_traffic_ctrl_tasks.go [217:246]


func (e *ExperimentClient) GetTrafficControlTargetTraffic(env, sceneName string, idList ...string) []TrafficControlTargetTraffic {
	targets := e.GetTrafficControlTargetData(env, sceneName, 0)

	var traffics []TrafficControlTargetTraffic

	idMap := make(map[string]bool)
	for _, id := range idList {
		if id == "" {
			continue
		}
		idMap[id] = true
	}

	for _, trafficTarget := range targets {
		for id, value := range trafficTarget.TargetTraffics {
			if len(idList) == 0 || idMap[id] {
				traffics = append(traffics, TrafficControlTargetTraffic{
					ItemOrExpId:            id,
					TrafficControlTaskId:   trafficTarget.TrafficControlTaskId,
					TrafficControlTargetId: trafficTarget.TrafficControlTargetId,
					TargetTraffic:          value,
					TaskTraffic:            trafficTarget.TaskTraffics[id],
					RecordTime:             trafficTarget.RecordTime,
				})
			}
		}
	}

	return traffics
}