mirror of
https://github.com/VictoriaMetrics/VictoriaMetrics.git
synced 2024-12-15 00:13:30 +01:00
lib/promscrape: stop dropping metric name if relabeling rules do not instruct to do this on the /metric-relabel-debug page
This commit is contained in:
parent
9b82eebc3e
commit
2e597555ec
@ -16,6 +16,7 @@ The following tip changes can be tested by building VictoriaMetrics components f
|
|||||||
## tip
|
## tip
|
||||||
|
|
||||||
* BUGFIX: allow specifying values bigger than 2GiB to the following command-line flag values on 32-bit architectures (`386` and `arm`): `-storage.minFreeDiskSpaceBytes` and `-remoteWrite.maxDiskUsagePerURL`. Previously values bigger than 2GiB were incorrectly truncated on these architectures.
|
* BUGFIX: allow specifying values bigger than 2GiB to the following command-line flag values on 32-bit architectures (`386` and `arm`): `-storage.minFreeDiskSpaceBytes` and `-remoteWrite.maxDiskUsagePerURL`. Previously values bigger than 2GiB were incorrectly truncated on these architectures.
|
||||||
|
* BUGFIX: [vmagent](https://docs.victoriametrics.com/vmagent.html): stop dropping metric name by a mistake on the [/metric-relabel-debug](https://docs.victoriametrics.com/vmagent.html#relabel-debug) page.
|
||||||
|
|
||||||
|
|
||||||
## [v1.85.1](https://github.com/VictoriaMetrics/VictoriaMetrics/releases/tag/v1.85.1)
|
## [v1.85.1](https://github.com/VictoriaMetrics/VictoriaMetrics/releases/tag/v1.85.1)
|
||||||
|
@ -90,31 +90,45 @@ func newDebugRelabelSteps(pcs *promrelabel.ParsedConfigs, labels *promutils.Labe
|
|||||||
labels.Labels = labelsResult
|
labels.Labels = labelsResult
|
||||||
outStr := promrelabel.LabelsToString(labels.GetLabels())
|
outStr := promrelabel.LabelsToString(labels.GetLabels())
|
||||||
|
|
||||||
// Add missing instance label
|
if isTargetRelabel {
|
||||||
if isTargetRelabel && labels.Get("instance") == "" {
|
// Add missing instance label
|
||||||
address := labels.Get("__address__")
|
if labels.Get("instance") == "" {
|
||||||
if address != "" {
|
address := labels.Get("__address__")
|
||||||
inStr := outStr
|
if address != "" {
|
||||||
labels.Add("instance", address)
|
inStr := outStr
|
||||||
outStr = promrelabel.LabelsToString(labels.GetLabels())
|
labels.Add("instance", address)
|
||||||
|
outStr = promrelabel.LabelsToString(labels.GetLabels())
|
||||||
|
dss = append(dss, promrelabel.DebugStep{
|
||||||
|
Rule: "add missing instance label from __address__ label",
|
||||||
|
In: inStr,
|
||||||
|
Out: outStr,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Remove labels with __ prefix
|
||||||
|
inStr := outStr
|
||||||
|
labels.RemoveLabelsWithDoubleUnderscorePrefix()
|
||||||
|
outStr = promrelabel.LabelsToString(labels.GetLabels())
|
||||||
|
if inStr != outStr {
|
||||||
dss = append(dss, promrelabel.DebugStep{
|
dss = append(dss, promrelabel.DebugStep{
|
||||||
Rule: "add missing instance label from __address__ label",
|
Rule: "remove labels with __ prefix",
|
||||||
|
In: inStr,
|
||||||
|
Out: outStr,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// Remove labels with __ prefix except of __name__
|
||||||
|
inStr := outStr
|
||||||
|
labels.Labels = promrelabel.FinalizeLabels(labels.Labels[:0], labels.Labels)
|
||||||
|
outStr = promrelabel.LabelsToString(labels.GetLabels())
|
||||||
|
if inStr != outStr {
|
||||||
|
dss = append(dss, promrelabel.DebugStep{
|
||||||
|
Rule: "remove labels with __ prefix except of __name__",
|
||||||
In: inStr,
|
In: inStr,
|
||||||
Out: outStr,
|
Out: outStr,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
// Remove labels with __ prefix
|
|
||||||
inStr := outStr
|
|
||||||
labels.RemoveLabelsWithDoubleUnderscorePrefix()
|
|
||||||
outStr = promrelabel.LabelsToString(labels.GetLabels())
|
|
||||||
if inStr != outStr {
|
|
||||||
dss = append(dss, promrelabel.DebugStep{
|
|
||||||
Rule: "remove labels with __ prefix",
|
|
||||||
In: inStr,
|
|
||||||
Out: outStr,
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// There is no need in labels' sorting, since promrelabel.LabelsToString() automatically sorts labels.
|
// There is no need in labels' sorting, since promrelabel.LabelsToString() automatically sorts labels.
|
||||||
|
Loading…
Reference in New Issue
Block a user