Skip to content

Commit

Permalink
Prefix adxmon related labels with adxmon
Browse files Browse the repository at this point in the history
The values used before were too generic and will conflict with many
metrics collected.
  • Loading branch information
jwilder committed Jun 15, 2023
1 parent 1cba701 commit 27a21c1
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 19 deletions.
8 changes: 4 additions & 4 deletions collector/series.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,21 +17,21 @@ func (s *seriesCreator) newSeries(name string, scrapeTarget ScrapeTarget, m *io_

if scrapeTarget.Namespace != "" {
ts.Labels = append(ts.Labels, prompb.Label{
Name: []byte("namespace"),
Name: []byte("adxmon_namespace"),
Value: []byte(scrapeTarget.Namespace),
})
}

if scrapeTarget.Pod != "" {
ts.Labels = append(ts.Labels, prompb.Label{
Name: []byte("pod"),
Name: []byte("adxmon_pod"),
Value: []byte(scrapeTarget.Pod),
})
}

if scrapeTarget.Container != "" {
ts.Labels = append(ts.Labels, prompb.Label{
Name: []byte("container"),
Name: []byte("adxmon_container"),
Value: []byte(scrapeTarget.Container),
})
}
Expand All @@ -54,7 +54,7 @@ func (s *seriesCreator) newSeries(name string, scrapeTarget ScrapeTarget, m *io_
}

for k, v := range s.AddLabels {
if k == "namespace" || k == "pod" || k == "container" {
if k == "adxmon_namespace" || k == "adxmon_pod" || k == "adxmon_container" {
continue
}

Expand Down
38 changes: 23 additions & 15 deletions collector/series_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -57,11 +57,11 @@ func TestSeriesCreator_PodMetadata(t *testing.T) {
require.Equal(t, 4, len(series.Labels))
require.Equal(t, "__name__", string(series.Labels[0].Name))
require.Equal(t, "test", string(series.Labels[0].Value))
require.Equal(t, "container", string(series.Labels[1].Name))
require.Equal(t, "adxmon_container", string(series.Labels[1].Name))
require.Equal(t, "container", string(series.Labels[1].Value))
require.Equal(t, "namespace", string(series.Labels[2].Name))
require.Equal(t, "adxmon_namespace", string(series.Labels[2].Name))
require.Equal(t, "namespace", string(series.Labels[2].Value))
require.Equal(t, "pod", string(series.Labels[3].Name))
require.Equal(t, "adxmon_pod", string(series.Labels[3].Name))
require.Equal(t, "pod", string(series.Labels[3].Value))
}

Expand All @@ -86,17 +86,25 @@ func TestSeriesCreator_AddLabels(t *testing.T) {
Pod: "pod",
Container: "container",
}, m)
require.Equal(t, 5, len(series.Labels))
require.Equal(t, 6, len(series.Labels))
// Labels should be sorted by name
require.Equal(t, "__name__", string(series.Labels[0].Name))
require.Equal(t, "test", string(series.Labels[0].Value))
require.Equal(t, "container", string(series.Labels[1].Name))
// adxmon_ should always be added
require.Equal(t, "adxmon_container", string(series.Labels[1].Name))
require.Equal(t, "container", string(series.Labels[1].Value))
require.Equal(t, "foo", string(series.Labels[2].Name))
require.Equal(t, "overridden", string(series.Labels[2].Value))
require.Equal(t, "namespace", string(series.Labels[3].Name))
require.Equal(t, "namespace", string(series.Labels[3].Value))
require.Equal(t, "pod", string(series.Labels[4].Name))
require.Equal(t, "pod", string(series.Labels[4].Value))
require.Equal(t, "adxmon_namespace", string(series.Labels[2].Name))
require.Equal(t, "namespace", string(series.Labels[2].Value))
require.Equal(t, "adxmon_pod", string(series.Labels[3].Name))
require.Equal(t, "pod", string(series.Labels[3].Value))

// Label foo is overridden by the series
require.Equal(t, "foo", string(series.Labels[4].Name))
require.Equal(t, "overridden", string(series.Labels[4].Value))

// Original label is still present
require.Equal(t, "namespace", string(series.Labels[5].Name))
require.Equal(t, "default", string(series.Labels[5].Value))
}

func TestSeriesCreator_DropLabels(t *testing.T) {
Expand All @@ -122,14 +130,14 @@ func TestSeriesCreator_DropLabels(t *testing.T) {
Pod: "pod",
Container: "container",
}, m)
require.Equal(t, 4, len(series.Labels))
require.Equal(t, 5, len(series.Labels))
require.Equal(t, "__name__", string(series.Labels[0].Name))
require.Equal(t, "test", string(series.Labels[0].Value))
require.Equal(t, "container", string(series.Labels[1].Name))
require.Equal(t, "adxmon_container", string(series.Labels[1].Name))
require.Equal(t, "container", string(series.Labels[1].Value))
require.Equal(t, "namespace", string(series.Labels[2].Name))
require.Equal(t, "adxmon_namespace", string(series.Labels[2].Name))
require.Equal(t, "namespace", string(series.Labels[2].Value))
require.Equal(t, "pod", string(series.Labels[3].Name))
require.Equal(t, "adxmon_pod", string(series.Labels[3].Name))
require.Equal(t, "pod", string(series.Labels[3].Value))
}

Expand Down

0 comments on commit 27a21c1

Please sign in to comment.