// Code generated by qtc from "debug.qtpl". DO NOT EDIT.
// See https://github.com/valyala/quicktemplate for details.
//line lib/promrelabel/debug.qtpl:1
package promrelabel
//line lib/promrelabel/debug.qtpl:1
import (
"github.com/VictoriaMetrics/VictoriaMetrics/lib/htmlcomponents"
"github.com/VictoriaMetrics/VictoriaMetrics/lib/promutils"
)
//line lib/promrelabel/debug.qtpl:8
import (
qtio422016 "io"
qt422016 "github.com/valyala/quicktemplate"
)
//line lib/promrelabel/debug.qtpl:8
var (
_ = qtio422016.Copy
_ = qt422016.AcquireByteBuffer
)
//line lib/promrelabel/debug.qtpl:8
func StreamRelabelDebugSteps(qw422016 *qt422016.Writer, isTargetRelabel bool, targetID string, dss []DebugStep, metric, relabelConfigs string, err error) {
//line lib/promrelabel/debug.qtpl:8
qw422016.N().S(`
`)
//line lib/promrelabel/debug.qtpl:12
htmlcomponents.StreamCommonHeader(qw422016)
//line lib/promrelabel/debug.qtpl:12
qw422016.N().S(`Metric relabel debug`)
//line lib/promrelabel/debug.qtpl:16
htmlcomponents.StreamNavbar(qw422016)
//line lib/promrelabel/debug.qtpl:16
qw422016.N().S(`Relabeling docs`)
//line lib/promrelabel/debug.qtpl:18
qw422016.N().S(` `)
//line lib/promrelabel/debug.qtpl:20
if isTargetRelabel {
//line lib/promrelabel/debug.qtpl:20
qw422016.N().S(`
Metric relabel debug`)
//line lib/promrelabel/debug.qtpl:22
} else {
//line lib/promrelabel/debug.qtpl:22
qw422016.N().S(`
Target relabel debug`)
//line lib/promrelabel/debug.qtpl:24
}
//line lib/promrelabel/debug.qtpl:24
qw422016.N().S(`
`)
//line lib/promrelabel/debug.qtpl:27
if err != nil {
//line lib/promrelabel/debug.qtpl:28
htmlcomponents.StreamErrorNotification(qw422016, err)
//line lib/promrelabel/debug.qtpl:29
}
//line lib/promrelabel/debug.qtpl:29
qw422016.N().S(`
`)
//line lib/promrelabel/debug.qtpl:44
streamrelabelDebugSteps(qw422016, dss)
//line lib/promrelabel/debug.qtpl:44
qw422016.N().S(`
`)
//line lib/promrelabel/debug.qtpl:50
}
//line lib/promrelabel/debug.qtpl:50
func WriteRelabelDebugSteps(qq422016 qtio422016.Writer, isTargetRelabel bool, targetID string, dss []DebugStep, metric, relabelConfigs string, err error) {
//line lib/promrelabel/debug.qtpl:50
qw422016 := qt422016.AcquireWriter(qq422016)
//line lib/promrelabel/debug.qtpl:50
StreamRelabelDebugSteps(qw422016, isTargetRelabel, targetID, dss, metric, relabelConfigs, err)
//line lib/promrelabel/debug.qtpl:50
qt422016.ReleaseWriter(qw422016)
//line lib/promrelabel/debug.qtpl:50
}
//line lib/promrelabel/debug.qtpl:50
func RelabelDebugSteps(isTargetRelabel bool, targetID string, dss []DebugStep, metric, relabelConfigs string, err error) string {
//line lib/promrelabel/debug.qtpl:50
qb422016 := qt422016.AcquireByteBuffer()
//line lib/promrelabel/debug.qtpl:50
WriteRelabelDebugSteps(qb422016, isTargetRelabel, targetID, dss, metric, relabelConfigs, err)
//line lib/promrelabel/debug.qtpl:50
qs422016 := string(qb422016.B)
//line lib/promrelabel/debug.qtpl:50
qt422016.ReleaseByteBuffer(qb422016)
//line lib/promrelabel/debug.qtpl:50
return qs422016
//line lib/promrelabel/debug.qtpl:50
}
//line lib/promrelabel/debug.qtpl:52
func streamrelabelDebugFormInputs(qw422016 *qt422016.Writer, metric, relabelConfigs string) {
//line lib/promrelabel/debug.qtpl:52
qw422016.N().S(`Relabel configs:
Labels:
`)
//line lib/promrelabel/debug.qtpl:62
}
//line lib/promrelabel/debug.qtpl:62
func writerelabelDebugFormInputs(qq422016 qtio422016.Writer, metric, relabelConfigs string) {
//line lib/promrelabel/debug.qtpl:62
qw422016 := qt422016.AcquireWriter(qq422016)
//line lib/promrelabel/debug.qtpl:62
streamrelabelDebugFormInputs(qw422016, metric, relabelConfigs)
//line lib/promrelabel/debug.qtpl:62
qt422016.ReleaseWriter(qw422016)
//line lib/promrelabel/debug.qtpl:62
}
//line lib/promrelabel/debug.qtpl:62
func relabelDebugFormInputs(metric, relabelConfigs string) string {
//line lib/promrelabel/debug.qtpl:62
qb422016 := qt422016.AcquireByteBuffer()
//line lib/promrelabel/debug.qtpl:62
writerelabelDebugFormInputs(qb422016, metric, relabelConfigs)
//line lib/promrelabel/debug.qtpl:62
qs422016 := string(qb422016.B)
//line lib/promrelabel/debug.qtpl:62
qt422016.ReleaseByteBuffer(qb422016)
//line lib/promrelabel/debug.qtpl:62
return qs422016
//line lib/promrelabel/debug.qtpl:62
}
//line lib/promrelabel/debug.qtpl:64
func streamrelabelDebugSteps(qw422016 *qt422016.Writer, dss []DebugStep) {
//line lib/promrelabel/debug.qtpl:65
if len(dss) > 0 {
//line lib/promrelabel/debug.qtpl:65
qw422016.N().S(`Original labels: `)
//line lib/promrelabel/debug.qtpl:67
streammustFormatLabels(qw422016, dss[0].In)
//line lib/promrelabel/debug.qtpl:67
qw422016.N().S(`
`)
//line lib/promrelabel/debug.qtpl:69
}
//line lib/promrelabel/debug.qtpl:69
qw422016.N().S(`Step | Relabeling Rule | Input Labels | Output labels |
`)
//line lib/promrelabel/debug.qtpl:80
for i, ds := range dss {
//line lib/promrelabel/debug.qtpl:82
inLabels := promutils.MustNewLabelsFromString(ds.In)
outLabels := promutils.MustNewLabelsFromString(ds.Out)
changedLabels := getChangedLabelNames(inLabels, outLabels)
//line lib/promrelabel/debug.qtpl:85
qw422016.N().S(``)
//line lib/promrelabel/debug.qtpl:87
qw422016.N().D(i)
//line lib/promrelabel/debug.qtpl:87
qw422016.N().S(` | `)
//line lib/promrelabel/debug.qtpl:88
qw422016.E().S(ds.Rule)
//line lib/promrelabel/debug.qtpl:88
qw422016.N().S(` | `)
//line lib/promrelabel/debug.qtpl:91
streamlabelsWithHighlight(qw422016, inLabels, changedLabels, "red")
//line lib/promrelabel/debug.qtpl:91
qw422016.N().S(` | `)
//line lib/promrelabel/debug.qtpl:96
streamlabelsWithHighlight(qw422016, outLabels, changedLabels, "blue")
//line lib/promrelabel/debug.qtpl:96
qw422016.N().S(` |
`)
//line lib/promrelabel/debug.qtpl:100
}
//line lib/promrelabel/debug.qtpl:100
qw422016.N().S(`
`)
//line lib/promrelabel/debug.qtpl:103
if len(dss) > 0 {
//line lib/promrelabel/debug.qtpl:103
qw422016.N().S(`Resulting labels: `)
//line lib/promrelabel/debug.qtpl:105
streammustFormatLabels(qw422016, dss[len(dss)-1].Out)
//line lib/promrelabel/debug.qtpl:105
qw422016.N().S(`
`)
//line lib/promrelabel/debug.qtpl:107
}
//line lib/promrelabel/debug.qtpl:108
}
//line lib/promrelabel/debug.qtpl:108
func writerelabelDebugSteps(qq422016 qtio422016.Writer, dss []DebugStep) {
//line lib/promrelabel/debug.qtpl:108
qw422016 := qt422016.AcquireWriter(qq422016)
//line lib/promrelabel/debug.qtpl:108
streamrelabelDebugSteps(qw422016, dss)
//line lib/promrelabel/debug.qtpl:108
qt422016.ReleaseWriter(qw422016)
//line lib/promrelabel/debug.qtpl:108
}
//line lib/promrelabel/debug.qtpl:108
func relabelDebugSteps(dss []DebugStep) string {
//line lib/promrelabel/debug.qtpl:108
qb422016 := qt422016.AcquireByteBuffer()
//line lib/promrelabel/debug.qtpl:108
writerelabelDebugSteps(qb422016, dss)
//line lib/promrelabel/debug.qtpl:108
qs422016 := string(qb422016.B)
//line lib/promrelabel/debug.qtpl:108
qt422016.ReleaseByteBuffer(qb422016)
//line lib/promrelabel/debug.qtpl:108
return qs422016
//line lib/promrelabel/debug.qtpl:108
}
//line lib/promrelabel/debug.qtpl:110
func streamlabelsWithHighlight(qw422016 *qt422016.Writer, labels *promutils.Labels, highlight map[string]struct{}, color string) {
//line lib/promrelabel/debug.qtpl:112
labelsList := labels.GetLabels()
metricName := ""
for i, label := range labelsList {
if label.Name == "__name__" {
metricName = label.Value
labelsList = append(labelsList[:i], labelsList[i+1:]...)
break
}
}
//line lib/promrelabel/debug.qtpl:122
if metricName != "" {
//line lib/promrelabel/debug.qtpl:123
if _, ok := highlight["__name__"]; ok {
//line lib/promrelabel/debug.qtpl:123
qw422016.N().S(``)
//line lib/promrelabel/debug.qtpl:124
qw422016.E().S(metricName)
//line lib/promrelabel/debug.qtpl:124
qw422016.N().S(``)
//line lib/promrelabel/debug.qtpl:125
} else {
//line lib/promrelabel/debug.qtpl:126
qw422016.E().S(metricName)
//line lib/promrelabel/debug.qtpl:127
}
//line lib/promrelabel/debug.qtpl:128
if len(labelsList) == 0 {
//line lib/promrelabel/debug.qtpl:128
return
//line lib/promrelabel/debug.qtpl:128
}
//line lib/promrelabel/debug.qtpl:129
}
//line lib/promrelabel/debug.qtpl:129
qw422016.N().S(`{`)
//line lib/promrelabel/debug.qtpl:131
for i, label := range labelsList {
//line lib/promrelabel/debug.qtpl:132
if _, ok := highlight[label.Name]; ok {
//line lib/promrelabel/debug.qtpl:132
qw422016.N().S(``)
//line lib/promrelabel/debug.qtpl:133
qw422016.E().S(label.Name)
//line lib/promrelabel/debug.qtpl:133
qw422016.N().S(`=`)
//line lib/promrelabel/debug.qtpl:133
qw422016.E().Q(label.Value)
//line lib/promrelabel/debug.qtpl:133
qw422016.N().S(``)
//line lib/promrelabel/debug.qtpl:134
} else {
//line lib/promrelabel/debug.qtpl:135
qw422016.E().S(label.Name)
//line lib/promrelabel/debug.qtpl:135
qw422016.N().S(`=`)
//line lib/promrelabel/debug.qtpl:135
qw422016.E().Q(label.Value)
//line lib/promrelabel/debug.qtpl:136
}
//line lib/promrelabel/debug.qtpl:137
if i < len(labelsList)-1 {
//line lib/promrelabel/debug.qtpl:137
qw422016.N().S(`,`)
//line lib/promrelabel/debug.qtpl:137
qw422016.N().S(` `)
//line lib/promrelabel/debug.qtpl:137
}
//line lib/promrelabel/debug.qtpl:138
}
//line lib/promrelabel/debug.qtpl:138
qw422016.N().S(`}`)
//line lib/promrelabel/debug.qtpl:140
}
//line lib/promrelabel/debug.qtpl:140
func writelabelsWithHighlight(qq422016 qtio422016.Writer, labels *promutils.Labels, highlight map[string]struct{}, color string) {
//line lib/promrelabel/debug.qtpl:140
qw422016 := qt422016.AcquireWriter(qq422016)
//line lib/promrelabel/debug.qtpl:140
streamlabelsWithHighlight(qw422016, labels, highlight, color)
//line lib/promrelabel/debug.qtpl:140
qt422016.ReleaseWriter(qw422016)
//line lib/promrelabel/debug.qtpl:140
}
//line lib/promrelabel/debug.qtpl:140
func labelsWithHighlight(labels *promutils.Labels, highlight map[string]struct{}, color string) string {
//line lib/promrelabel/debug.qtpl:140
qb422016 := qt422016.AcquireByteBuffer()
//line lib/promrelabel/debug.qtpl:140
writelabelsWithHighlight(qb422016, labels, highlight, color)
//line lib/promrelabel/debug.qtpl:140
qs422016 := string(qb422016.B)
//line lib/promrelabel/debug.qtpl:140
qt422016.ReleaseByteBuffer(qb422016)
//line lib/promrelabel/debug.qtpl:140
return qs422016
//line lib/promrelabel/debug.qtpl:140
}
//line lib/promrelabel/debug.qtpl:142
func streammustFormatLabels(qw422016 *qt422016.Writer, s string) {
//line lib/promrelabel/debug.qtpl:143
labels := promutils.MustNewLabelsFromString(s)
//line lib/promrelabel/debug.qtpl:144
streamlabelsWithHighlight(qw422016, labels, nil, "")
//line lib/promrelabel/debug.qtpl:145
}
//line lib/promrelabel/debug.qtpl:145
func writemustFormatLabels(qq422016 qtio422016.Writer, s string) {
//line lib/promrelabel/debug.qtpl:145
qw422016 := qt422016.AcquireWriter(qq422016)
//line lib/promrelabel/debug.qtpl:145
streammustFormatLabels(qw422016, s)
//line lib/promrelabel/debug.qtpl:145
qt422016.ReleaseWriter(qw422016)
//line lib/promrelabel/debug.qtpl:145
}
//line lib/promrelabel/debug.qtpl:145
func mustFormatLabels(s string) string {
//line lib/promrelabel/debug.qtpl:145
qb422016 := qt422016.AcquireByteBuffer()
//line lib/promrelabel/debug.qtpl:145
writemustFormatLabels(qb422016, s)
//line lib/promrelabel/debug.qtpl:145
qs422016 := string(qb422016.B)
//line lib/promrelabel/debug.qtpl:145
qt422016.ReleaseByteBuffer(qb422016)
//line lib/promrelabel/debug.qtpl:145
return qs422016
//line lib/promrelabel/debug.qtpl:145
}