mirror of
https://github.com/prometheus/prometheus.git
synced 2025-03-05 20:59:13 -08:00
Extract to separate method
Signed-off-by: darshanime <deathbullet@gmail.com>
This commit is contained in:
parent
49e6bdade5
commit
cff15aed86
|
@ -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
|
||||
|
|
|
@ -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) {
|
||||
|
|
Loading…
Reference in a new issue