// Code generated by qtc from "targetstatus.qtpl". DO NOT EDIT.
// See https://github.com/valyala/quicktemplate for details.
//line lib/promscrape/targetstatus.qtpl:1
package promscrape
//line lib/promscrape/targetstatus.qtpl:1
import (
"github.com/VictoriaMetrics/VictoriaMetrics/lib/prompbmarshal"
"github.com/VictoriaMetrics/VictoriaMetrics/lib/promrelabel"
"net/url"
"time"
)
//line lib/promscrape/targetstatus.qtpl:10
import (
qtio422016 "io"
qt422016 "github.com/valyala/quicktemplate"
)
//line lib/promscrape/targetstatus.qtpl:10
var (
_ = qtio422016.Copy
_ = qt422016.AcquireByteBuffer
)
//line lib/promscrape/targetstatus.qtpl:10
func StreamTargetsResponsePlain(qw422016 *qt422016.Writer, jts []jobTargetsStatuses, emptyJobs []string, showOriginLabels, showOnlyUnhealthy bool, err error) {
//line lib/promscrape/targetstatus.qtpl:12
if err != nil {
//line lib/promscrape/targetstatus.qtpl:13
qw422016.N().S(err.Error())
//line lib/promscrape/targetstatus.qtpl:14
return
//line lib/promscrape/targetstatus.qtpl:15
}
//line lib/promscrape/targetstatus.qtpl:17
for _, js := range jts {
//line lib/promscrape/targetstatus.qtpl:18
if showOnlyUnhealthy && js.upCount == js.targetsTotal {
//line lib/promscrape/targetstatus.qtpl:18
continue
//line lib/promscrape/targetstatus.qtpl:18
}
//line lib/promscrape/targetstatus.qtpl:18
qw422016.N().S(`job=`)
//line lib/promscrape/targetstatus.qtpl:19
qw422016.N().Q(js.job)
//line lib/promscrape/targetstatus.qtpl:19
qw422016.N().S(`(`)
//line lib/promscrape/targetstatus.qtpl:19
qw422016.N().D(js.upCount)
//line lib/promscrape/targetstatus.qtpl:19
qw422016.N().S(`/`)
//line lib/promscrape/targetstatus.qtpl:19
qw422016.N().D(js.targetsTotal)
//line lib/promscrape/targetstatus.qtpl:19
qw422016.N().S(` `)
//line lib/promscrape/targetstatus.qtpl:19
qw422016.N().S(`up)`)
//line lib/promscrape/targetstatus.qtpl:20
qw422016.N().S(`
`)
//line lib/promscrape/targetstatus.qtpl:21
for _, ts := range js.targetsStatus {
//line lib/promscrape/targetstatus.qtpl:22
if showOnlyUnhealthy && ts.up {
//line lib/promscrape/targetstatus.qtpl:22
continue
//line lib/promscrape/targetstatus.qtpl:22
}
//line lib/promscrape/targetstatus.qtpl:23
qw422016.N().S("\t")
//line lib/promscrape/targetstatus.qtpl:23
qw422016.N().S(`state=`)
//line lib/promscrape/targetstatus.qtpl:24
if ts.up {
//line lib/promscrape/targetstatus.qtpl:24
qw422016.N().S(`up`)
//line lib/promscrape/targetstatus.qtpl:24
} else {
//line lib/promscrape/targetstatus.qtpl:24
qw422016.N().S(`down`)
//line lib/promscrape/targetstatus.qtpl:24
}
//line lib/promscrape/targetstatus.qtpl:24
qw422016.N().S(`,`)
//line lib/promscrape/targetstatus.qtpl:24
qw422016.N().S(` `)
//line lib/promscrape/targetstatus.qtpl:24
qw422016.N().S(`endpoint=`)
//line lib/promscrape/targetstatus.qtpl:25
qw422016.N().S(ts.sw.Config.ScrapeURL)
//line lib/promscrape/targetstatus.qtpl:25
qw422016.N().S(`,`)
//line lib/promscrape/targetstatus.qtpl:25
qw422016.N().S(` `)
//line lib/promscrape/targetstatus.qtpl:25
qw422016.N().S(`labels=`)
//line lib/promscrape/targetstatus.qtpl:26
qw422016.N().S(promLabelsString(promrelabel.FinalizeLabels(nil, ts.sw.Config.Labels)))
//line lib/promscrape/targetstatus.qtpl:26
qw422016.N().S(`,`)
//line lib/promscrape/targetstatus.qtpl:26
qw422016.N().S(` `)
//line lib/promscrape/targetstatus.qtpl:27
if showOriginLabels {
//line lib/promscrape/targetstatus.qtpl:27
qw422016.N().S(`originalLabels=`)
//line lib/promscrape/targetstatus.qtpl:27
qw422016.N().S(promLabelsString(ts.sw.Config.OriginalLabels))
//line lib/promscrape/targetstatus.qtpl:27
qw422016.N().S(`,`)
//line lib/promscrape/targetstatus.qtpl:27
qw422016.N().S(` `)
//line lib/promscrape/targetstatus.qtpl:27
}
//line lib/promscrape/targetstatus.qtpl:27
qw422016.N().S(`scrapes_total=`)
//line lib/promscrape/targetstatus.qtpl:28
qw422016.N().D(ts.scrapesTotal)
//line lib/promscrape/targetstatus.qtpl:28
qw422016.N().S(`,`)
//line lib/promscrape/targetstatus.qtpl:28
qw422016.N().S(` `)
//line lib/promscrape/targetstatus.qtpl:28
qw422016.N().S(`scrapes_failed=`)
//line lib/promscrape/targetstatus.qtpl:29
qw422016.N().D(ts.scrapesFailed)
//line lib/promscrape/targetstatus.qtpl:29
qw422016.N().S(`,`)
//line lib/promscrape/targetstatus.qtpl:29
qw422016.N().S(` `)
//line lib/promscrape/targetstatus.qtpl:29
qw422016.N().S(`last_scrape=`)
//line lib/promscrape/targetstatus.qtpl:30
qw422016.N().FPrec(ts.getDurationFromLastScrape().Seconds(), 3)
//line lib/promscrape/targetstatus.qtpl:30
qw422016.N().S(`s ago,`)
//line lib/promscrape/targetstatus.qtpl:30
qw422016.N().S(` `)
//line lib/promscrape/targetstatus.qtpl:30
qw422016.N().S(`scrape_duration=`)
//line lib/promscrape/targetstatus.qtpl:31
qw422016.N().D(int(ts.scrapeDuration))
//line lib/promscrape/targetstatus.qtpl:31
qw422016.N().S(`ms,`)
//line lib/promscrape/targetstatus.qtpl:31
qw422016.N().S(` `)
//line lib/promscrape/targetstatus.qtpl:31
qw422016.N().S(`samples_scraped=`)
//line lib/promscrape/targetstatus.qtpl:32
qw422016.N().D(ts.samplesScraped)
//line lib/promscrape/targetstatus.qtpl:32
qw422016.N().S(`,`)
//line lib/promscrape/targetstatus.qtpl:32
qw422016.N().S(` `)
//line lib/promscrape/targetstatus.qtpl:32
qw422016.N().S(`error=`)
//line lib/promscrape/targetstatus.qtpl:33
if ts.err != nil {
//line lib/promscrape/targetstatus.qtpl:33
qw422016.N().S(ts.err.Error())
//line lib/promscrape/targetstatus.qtpl:33
}
//line lib/promscrape/targetstatus.qtpl:34
qw422016.N().S(`
`)
//line lib/promscrape/targetstatus.qtpl:35
}
//line lib/promscrape/targetstatus.qtpl:36
}
//line lib/promscrape/targetstatus.qtpl:38
for _, jobName := range emptyJobs {
//line lib/promscrape/targetstatus.qtpl:38
qw422016.N().S(`job=`)
//line lib/promscrape/targetstatus.qtpl:39
qw422016.N().Q(jobName)
//line lib/promscrape/targetstatus.qtpl:39
qw422016.N().S(`(0/0 up)`)
//line lib/promscrape/targetstatus.qtpl:40
qw422016.N().S(`
`)
//line lib/promscrape/targetstatus.qtpl:41
}
//line lib/promscrape/targetstatus.qtpl:43
}
//line lib/promscrape/targetstatus.qtpl:43
func WriteTargetsResponsePlain(qq422016 qtio422016.Writer, jts []jobTargetsStatuses, emptyJobs []string, showOriginLabels, showOnlyUnhealthy bool, err error) {
//line lib/promscrape/targetstatus.qtpl:43
qw422016 := qt422016.AcquireWriter(qq422016)
//line lib/promscrape/targetstatus.qtpl:43
StreamTargetsResponsePlain(qw422016, jts, emptyJobs, showOriginLabels, showOnlyUnhealthy, err)
//line lib/promscrape/targetstatus.qtpl:43
qt422016.ReleaseWriter(qw422016)
//line lib/promscrape/targetstatus.qtpl:43
}
//line lib/promscrape/targetstatus.qtpl:43
func TargetsResponsePlain(jts []jobTargetsStatuses, emptyJobs []string, showOriginLabels, showOnlyUnhealthy bool, err error) string {
//line lib/promscrape/targetstatus.qtpl:43
qb422016 := qt422016.AcquireByteBuffer()
//line lib/promscrape/targetstatus.qtpl:43
WriteTargetsResponsePlain(qb422016, jts, emptyJobs, showOriginLabels, showOnlyUnhealthy, err)
//line lib/promscrape/targetstatus.qtpl:43
qs422016 := string(qb422016.B)
//line lib/promscrape/targetstatus.qtpl:43
qt422016.ReleaseByteBuffer(qb422016)
//line lib/promscrape/targetstatus.qtpl:43
return qs422016
//line lib/promscrape/targetstatus.qtpl:43
}
//line lib/promscrape/targetstatus.qtpl:45
func StreamTargetsResponseHTML(qw422016 *qt422016.Writer, jts []jobTargetsStatuses, emptyJobs []string, showOnlyUnhealthy bool, endpointSearch, labelSearch string, err error) {
//line lib/promscrape/targetstatus.qtpl:45
qw422016.N().S(`
Scrape targets`)
//line lib/promscrape/targetstatus.qtpl:76
if err != nil {
//line lib/promscrape/targetstatus.qtpl:77
streamerrorNotification(qw422016, err)
//line lib/promscrape/targetstatus.qtpl:78
}
//line lib/promscrape/targetstatus.qtpl:78
qw422016.N().S(`
Scrape targets
`)
//line lib/promscrape/targetstatus.qtpl:113
if endpointSearch == "" && labelSearch == "" {
//line lib/promscrape/targetstatus.qtpl:113
qw422016.N().S(``)
//line lib/promscrape/targetstatus.qtpl:117
} else {
//line lib/promscrape/targetstatus.qtpl:117
qw422016.N().S(``)
//line lib/promscrape/targetstatus.qtpl:121
}
//line lib/promscrape/targetstatus.qtpl:121
qw422016.N().S(`
`)
//line lib/promscrape/targetstatus.qtpl:147
for i, js := range jts {
//line lib/promscrape/targetstatus.qtpl:148
if showOnlyUnhealthy && js.upCount == js.targetsTotal {
//line lib/promscrape/targetstatus.qtpl:148
continue
//line lib/promscrape/targetstatus.qtpl:148
}
//line lib/promscrape/targetstatus.qtpl:148
qw422016.N().S(`
`)
//line lib/promscrape/targetstatus.qtpl:152
qw422016.E().S(js.job)
//line lib/promscrape/targetstatus.qtpl:152
qw422016.N().S(` `)
//line lib/promscrape/targetstatus.qtpl:152
qw422016.N().S(`(`)
//line lib/promscrape/targetstatus.qtpl:152
qw422016.N().D(js.upCount)
//line lib/promscrape/targetstatus.qtpl:152
qw422016.N().S(`/`)
//line lib/promscrape/targetstatus.qtpl:152
qw422016.N().D(js.targetsTotal)
//line lib/promscrape/targetstatus.qtpl:152
qw422016.N().S(` `)
//line lib/promscrape/targetstatus.qtpl:152
qw422016.N().S(`up)
Endpoint | State | Labels | Scrapes | Errors | Last Scrape | Duration | Samples | Last error |
`)
//line lib/promscrape/targetstatus.qtpl:180
for _, ts := range js.targetsStatus {
//line lib/promscrape/targetstatus.qtpl:182
endpoint := ts.sw.Config.ScrapeURL
targetID := getTargetID(ts.sw)
lastScrapeTime := ts.getDurationFromLastScrape()
//line lib/promscrape/targetstatus.qtpl:186
if showOnlyUnhealthy && ts.up {
//line lib/promscrape/targetstatus.qtpl:186
continue
//line lib/promscrape/targetstatus.qtpl:186
}
//line lib/promscrape/targetstatus.qtpl:186
qw422016.N().S(``)
//line lib/promscrape/targetstatus.qtpl:188
qw422016.E().S(endpoint)
//line lib/promscrape/targetstatus.qtpl:188
qw422016.N().S(` (response) | `)
//line lib/promscrape/targetstatus.qtpl:193
if ts.up {
//line lib/promscrape/targetstatus.qtpl:193
qw422016.N().S(`UP`)
//line lib/promscrape/targetstatus.qtpl:193
} else {
//line lib/promscrape/targetstatus.qtpl:193
qw422016.N().S(`DOWN`)
//line lib/promscrape/targetstatus.qtpl:193
}
//line lib/promscrape/targetstatus.qtpl:193
qw422016.N().S(` | `)
//line lib/promscrape/targetstatus.qtpl:197
streamformatLabel(qw422016, promrelabel.FinalizeLabels(nil, ts.sw.Config.Labels))
//line lib/promscrape/targetstatus.qtpl:197
qw422016.N().S(` `)
//line lib/promscrape/targetstatus.qtpl:200
streamformatLabel(qw422016, ts.sw.Config.OriginalLabels)
//line lib/promscrape/targetstatus.qtpl:200
qw422016.N().S(` | `)
//line lib/promscrape/targetstatus.qtpl:203
qw422016.N().D(ts.scrapesTotal)
//line lib/promscrape/targetstatus.qtpl:203
qw422016.N().S(` | `)
//line lib/promscrape/targetstatus.qtpl:204
qw422016.N().D(ts.scrapesFailed)
//line lib/promscrape/targetstatus.qtpl:204
qw422016.N().S(` | `)
//line lib/promscrape/targetstatus.qtpl:206
if lastScrapeTime < 365*24*time.Hour {
//line lib/promscrape/targetstatus.qtpl:207
qw422016.N().FPrec(lastScrapeTime.Seconds(), 3)
//line lib/promscrape/targetstatus.qtpl:207
qw422016.N().S(`s ago`)
//line lib/promscrape/targetstatus.qtpl:208
} else {
//line lib/promscrape/targetstatus.qtpl:208
qw422016.N().S(`none`)
//line lib/promscrape/targetstatus.qtpl:210
}
//line lib/promscrape/targetstatus.qtpl:210
qw422016.N().S(` | `)
//line lib/promscrape/targetstatus.qtpl:211
qw422016.N().D(int(ts.scrapeDuration))
//line lib/promscrape/targetstatus.qtpl:211
qw422016.N().S(`ms | `)
//line lib/promscrape/targetstatus.qtpl:212
qw422016.N().D(ts.samplesScraped)
//line lib/promscrape/targetstatus.qtpl:212
qw422016.N().S(` | `)
//line lib/promscrape/targetstatus.qtpl:213
if ts.err != nil {
//line lib/promscrape/targetstatus.qtpl:213
qw422016.E().S(ts.err.Error())
//line lib/promscrape/targetstatus.qtpl:213
}
//line lib/promscrape/targetstatus.qtpl:213
qw422016.N().S(` |
`)
//line lib/promscrape/targetstatus.qtpl:215
}
//line lib/promscrape/targetstatus.qtpl:215
qw422016.N().S(`
`)
//line lib/promscrape/targetstatus.qtpl:221
}
//line lib/promscrape/targetstatus.qtpl:221
qw422016.N().S(`
`)
//line lib/promscrape/targetstatus.qtpl:225
for _, jobName := range emptyJobs {
//line lib/promscrape/targetstatus.qtpl:225
qw422016.N().S(`Endpoint | State | Labels | Last Scrape | Scrape Duration | Samples Scraped | Error |
---|
`)
//line lib/promscrape/targetstatus.qtpl:244
}
//line lib/promscrape/targetstatus.qtpl:244
qw422016.N().S(` `)
//line lib/promscrape/targetstatus.qtpl:250
}
//line lib/promscrape/targetstatus.qtpl:250
func WriteTargetsResponseHTML(qq422016 qtio422016.Writer, jts []jobTargetsStatuses, emptyJobs []string, showOnlyUnhealthy bool, endpointSearch, labelSearch string, err error) {
//line lib/promscrape/targetstatus.qtpl:250
qw422016 := qt422016.AcquireWriter(qq422016)
//line lib/promscrape/targetstatus.qtpl:250
StreamTargetsResponseHTML(qw422016, jts, emptyJobs, showOnlyUnhealthy, endpointSearch, labelSearch, err)
//line lib/promscrape/targetstatus.qtpl:250
qt422016.ReleaseWriter(qw422016)
//line lib/promscrape/targetstatus.qtpl:250
}
//line lib/promscrape/targetstatus.qtpl:250
func TargetsResponseHTML(jts []jobTargetsStatuses, emptyJobs []string, showOnlyUnhealthy bool, endpointSearch, labelSearch string, err error) string {
//line lib/promscrape/targetstatus.qtpl:250
qb422016 := qt422016.AcquireByteBuffer()
//line lib/promscrape/targetstatus.qtpl:250
WriteTargetsResponseHTML(qb422016, jts, emptyJobs, showOnlyUnhealthy, endpointSearch, labelSearch, err)
//line lib/promscrape/targetstatus.qtpl:250
qs422016 := string(qb422016.B)
//line lib/promscrape/targetstatus.qtpl:250
qt422016.ReleaseByteBuffer(qb422016)
//line lib/promscrape/targetstatus.qtpl:250
return qs422016
//line lib/promscrape/targetstatus.qtpl:250
}
//line lib/promscrape/targetstatus.qtpl:252
func streamqueryArgs(qw422016 *qt422016.Writer, m map[string]string) {
//line lib/promscrape/targetstatus.qtpl:254
qa := make(url.Values, len(m))
for k, v := range m {
qa[k] = []string{v}
}
//line lib/promscrape/targetstatus.qtpl:259
qw422016.E().S(qa.Encode())
//line lib/promscrape/targetstatus.qtpl:260
}
//line lib/promscrape/targetstatus.qtpl:260
func writequeryArgs(qq422016 qtio422016.Writer, m map[string]string) {
//line lib/promscrape/targetstatus.qtpl:260
qw422016 := qt422016.AcquireWriter(qq422016)
//line lib/promscrape/targetstatus.qtpl:260
streamqueryArgs(qw422016, m)
//line lib/promscrape/targetstatus.qtpl:260
qt422016.ReleaseWriter(qw422016)
//line lib/promscrape/targetstatus.qtpl:260
}
//line lib/promscrape/targetstatus.qtpl:260
func queryArgs(m map[string]string) string {
//line lib/promscrape/targetstatus.qtpl:260
qb422016 := qt422016.AcquireByteBuffer()
//line lib/promscrape/targetstatus.qtpl:260
writequeryArgs(qb422016, m)
//line lib/promscrape/targetstatus.qtpl:260
qs422016 := string(qb422016.B)
//line lib/promscrape/targetstatus.qtpl:260
qt422016.ReleaseByteBuffer(qb422016)
//line lib/promscrape/targetstatus.qtpl:260
return qs422016
//line lib/promscrape/targetstatus.qtpl:260
}
//line lib/promscrape/targetstatus.qtpl:262
func streamformatLabel(qw422016 *qt422016.Writer, labels []prompbmarshal.Label) {
//line lib/promscrape/targetstatus.qtpl:262
qw422016.N().S(`{`)
//line lib/promscrape/targetstatus.qtpl:264
for i, label := range labels {
//line lib/promscrape/targetstatus.qtpl:265
qw422016.E().S(label.Name)
//line lib/promscrape/targetstatus.qtpl:265
qw422016.N().S(`=`)
//line lib/promscrape/targetstatus.qtpl:265
qw422016.E().Q(label.Value)
//line lib/promscrape/targetstatus.qtpl:266
if i+1 < len(labels) {
//line lib/promscrape/targetstatus.qtpl:266
qw422016.N().S(`,`)
//line lib/promscrape/targetstatus.qtpl:266
qw422016.N().S(` `)
//line lib/promscrape/targetstatus.qtpl:266
}
//line lib/promscrape/targetstatus.qtpl:267
}
//line lib/promscrape/targetstatus.qtpl:267
qw422016.N().S(`}`)
//line lib/promscrape/targetstatus.qtpl:269
}
//line lib/promscrape/targetstatus.qtpl:269
func writeformatLabel(qq422016 qtio422016.Writer, labels []prompbmarshal.Label) {
//line lib/promscrape/targetstatus.qtpl:269
qw422016 := qt422016.AcquireWriter(qq422016)
//line lib/promscrape/targetstatus.qtpl:269
streamformatLabel(qw422016, labels)
//line lib/promscrape/targetstatus.qtpl:269
qt422016.ReleaseWriter(qw422016)
//line lib/promscrape/targetstatus.qtpl:269
}
//line lib/promscrape/targetstatus.qtpl:269
func formatLabel(labels []prompbmarshal.Label) string {
//line lib/promscrape/targetstatus.qtpl:269
qb422016 := qt422016.AcquireByteBuffer()
//line lib/promscrape/targetstatus.qtpl:269
writeformatLabel(qb422016, labels)
//line lib/promscrape/targetstatus.qtpl:269
qs422016 := string(qb422016.B)
//line lib/promscrape/targetstatus.qtpl:269
qt422016.ReleaseByteBuffer(qb422016)
//line lib/promscrape/targetstatus.qtpl:269
return qs422016
//line lib/promscrape/targetstatus.qtpl:269
}
//line lib/promscrape/targetstatus.qtpl:271
func streamerrorNotification(qw422016 *qt422016.Writer, err error) {
//line lib/promscrape/targetstatus.qtpl:271
qw422016.N().S(``)
//line lib/promscrape/targetstatus.qtpl:276
qw422016.E().S(err.Error())
//line lib/promscrape/targetstatus.qtpl:276
qw422016.N().S(`
`)
//line lib/promscrape/targetstatus.qtpl:279
}
//line lib/promscrape/targetstatus.qtpl:279
func writeerrorNotification(qq422016 qtio422016.Writer, err error) {
//line lib/promscrape/targetstatus.qtpl:279
qw422016 := qt422016.AcquireWriter(qq422016)
//line lib/promscrape/targetstatus.qtpl:279
streamerrorNotification(qw422016, err)
//line lib/promscrape/targetstatus.qtpl:279
qt422016.ReleaseWriter(qw422016)
//line lib/promscrape/targetstatus.qtpl:279
}
//line lib/promscrape/targetstatus.qtpl:279
func errorNotification(err error) string {
//line lib/promscrape/targetstatus.qtpl:279
qb422016 := qt422016.AcquireByteBuffer()
//line lib/promscrape/targetstatus.qtpl:279
writeerrorNotification(qb422016, err)
//line lib/promscrape/targetstatus.qtpl:279
qs422016 := string(qb422016.B)
//line lib/promscrape/targetstatus.qtpl:279
qt422016.ReleaseByteBuffer(qb422016)
//line lib/promscrape/targetstatus.qtpl:279
return qs422016
//line lib/promscrape/targetstatus.qtpl:279
}