From 25bee22ee4d571822f5c8a28dbaa9c857198fdf4 Mon Sep 17 00:00:00 2001 From: "loki-gh-app[bot]" <160051081+loki-gh-app[bot]@users.noreply.github.com> Date: Thu, 17 Oct 2024 17:36:01 +0530 Subject: [PATCH] fix(logql): A renamed label should use ParsedLabel category to take precendence (backport k224) (#14516) Co-authored-by: Ashwanth --- pkg/logql/log/fmt.go | 4 ++-- pkg/logql/log/fmt_test.go | 16 ++++++++++++++++ 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/pkg/logql/log/fmt.go b/pkg/logql/log/fmt.go index c69aa3d40bb0..74eb0262d39d 100644 --- a/pkg/logql/log/fmt.go +++ b/pkg/logql/log/fmt.go @@ -391,9 +391,9 @@ func (lf *LabelsFormatter) Process(ts int64, l []byte, lbs *LabelsBuilder) ([]by defer smp.Put(m) for _, f := range lf.formats { if f.Rename { - v, category, ok := lbs.GetWithCategory(f.Value) + v, _, ok := lbs.GetWithCategory(f.Value) if ok { - lbs.Set(category, f.Name, v) + lbs.Set(ParsedLabel, f.Name, v) lbs.Del(f.Value) } continue diff --git a/pkg/logql/log/fmt_test.go b/pkg/logql/log/fmt_test.go index 2028d2e00bf8..9cb449a7bfdd 100644 --- a/pkg/logql/log/fmt_test.go +++ b/pkg/logql/log/fmt_test.go @@ -515,6 +515,22 @@ func Test_labelsFormatter_Format(t *testing.T) { in labels.Labels want labels.Labels }{ + { + "rename label", + mustNewLabelsFormatter([]LabelFmt{ + NewRenameLabelFmt("baz", "foo"), + }), + labels.FromStrings("foo", "blip", "bar", "blop"), + labels.FromStrings("bar", "blop", "baz", "blip"), + }, + { + "rename and overwrite existing label", + mustNewLabelsFormatter([]LabelFmt{ + NewRenameLabelFmt("bar", "foo"), + }), + labels.FromStrings("foo", "blip", "bar", "blop"), + labels.FromStrings("bar", "blip"), + }, { "combined with template", mustNewLabelsFormatter([]LabelFmt{NewTemplateLabelFmt("foo", "{{.foo}} and {{.bar}}")}),