Extract to separate method

Signed-off-by: darshanime <deathbullet@gmail.com>
This commit is contained in:
darshanime 2024-01-30 07:47:22 +05:30
parent 49e6bdade5
commit cff15aed86
2 changed files with 16 additions and 4 deletions

View file

@ -207,14 +207,19 @@ func (m *Manager) reload() {
m.mtxScrape.Unlock()
wg.Wait()
m.warnIfTargetsRelabelledToSameLabels()
}
func (m *Manager) warnIfTargetsRelabelledToSameLabels() {
activeTargets := make(map[uint64]*Target)
for _, scrapePool := range m.scrapePools {
for _, target := range scrapePool.activeTargets {
if t, ok := activeTargets[target.labels.Hash()]; ok {
level.Warn(m.logger).Log(
"msg", "Found targets with same labels after relabelling",
"target", t.DiscoveredLabels().Get(model.AddressLabel),
"target", target.DiscoveredLabels().Get(model.AddressLabel),
"target_one", t.DiscoveredLabels().Get(model.AddressLabel),
"target_two", target.DiscoveredLabels().Get(model.AddressLabel),
"labels", target.labels.String(),
)
}
activeTargets[target.labels.Hash()] = target

View file

@ -638,14 +638,21 @@ func TestManagerDuplicateAfterRelabellingWarning(t *testing.T) {
sp := &scrapePool{
activeTargets: map[uint64]*Target{},
}
sp.activeTargets[uint64(0)] = &Target{discoveredLabels: labels.FromStrings("__address__", "foo")}
sp.activeTargets[uint64(1)] = &Target{discoveredLabels: labels.FromStrings("__address__", "bar")}
sp.activeTargets[uint64(0)] = &Target{
discoveredLabels: labels.FromStrings("__address__", "foo"),
labels: labels.FromStrings("label_key", "label_value"),
}
sp.activeTargets[uint64(1)] = &Target{
discoveredLabels: labels.FromStrings("__address__", "bar"),
labels: labels.FromStrings("label_key", "label_value"),
}
m.scrapePools["default"] = sp
m.reload()
require.Contains(t, output, "Found targets with same labels after relabelling")
require.Contains(t, output, "foo")
require.Contains(t, output, "bar")
require.Contains(t, output, `{label_key="label_value"}`)
}
func TestSetOffsetSeed(t *testing.T) {