func (m *targetManager) AddTargetsFromConfig(config config.Config) { for _, job := range config.Jobs() { if job.SdName != nil { m.Lock() m.targetPoolForJob(job) m.Unlock() continue } for _, targetGroup := range job.TargetGroup { baseLabels := clientmodel.LabelSet{ clientmodel.JobLabel: clientmodel.LabelValue(job.GetName()), } if targetGroup.Labels != nil { for _, label := range targetGroup.Labels.Label { baseLabels[clientmodel.LabelName(label.GetName())] = clientmodel.LabelValue(label.GetValue()) } } for _, endpoint := range targetGroup.Target { target := NewTarget(endpoint, job.ScrapeTimeout(), baseLabels) m.AddTarget(job, target) } } } }