discovery/manager.go
func (m *Manager) ApplyConfig(cfg map[string]sd_config.ServiceDiscoveryConfig) error {
	m.mtx.Lock()
	defer m.mtx.Unlock()

	for pk := range m.targets {
		if _, ok := cfg[pk.setName]; !ok {
			discoveredTargets.DeleteLabelValues(m.name, pk.setName)
		}
	}
	m.cancelDiscoverers()
	for name, scfg := range cfg {
		m.registerProviders(scfg, name)
		discoveredTargets.WithLabelValues(m.name, name).Set(0)
	}
	for _, prov := range m.providers {
		m.startProvider(m.ctx, prov)
	}

	return nil
}
func (m *Manager) ApplyConfig(cfg map[string]sd_config.ServiceDiscoveryConfig) error {
	m.mtx.Lock()
	defer m.mtx.Unlock()

	for pk := range m.targets {
		if _, ok := cfg[pk.setName]; !ok {
			discoveredTargets.DeleteLabelValues(m.name, pk.setName)
		}
	}
	m.cancelDiscoverers()
	for name, scfg := range cfg {
		m.registerProviders(scfg, name)
		discoveredTargets.WithLabelValues(m.name, name).Set(0)
	}
	for _, prov := range m.providers {
		m.startProvider(m.ctx, prov)
	}

	return nil
}
func ( m * Manager ) ApplyConfig ( cfg map [ string ] sd_config . ServiceDiscoveryConfig ) error { m . mtx . Lock ( ) defer m . mtx . Unlock ( ) for pk := range m . targets { if _ , ok := cfg [ pk . setName ] ; ! ok { discoveredTargets . DeleteLabelValues ( m . name , pk . setName ) } } m . cancelDiscoverers ( ) for name , scfg := range cfg { m . registerProviders ( scfg , name ) discoveredTargets . WithLabelValues ( m . name , name ) . Set ( 0 ) } for _ , prov := range m . providers { m . startProvider ( m . ctx , prov ) } return nil }
// ApplyConfig removes all running discovery providers and starts new ones using the provided config.
ApplyConfig removes all running discovery providers and starts new ones using the provided config .