// 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 ( "net/url" "strconv" "strings" "github.com/VictoriaMetrics/VictoriaMetrics/lib/htmlcomponents" "github.com/VictoriaMetrics/VictoriaMetrics/lib/promutils" ) //line lib/promscrape/targetstatus.qtpl:12 import ( qtio422016 "io" qt422016 "github.com/valyala/quicktemplate" ) //line lib/promscrape/targetstatus.qtpl:12 var ( _ = qtio422016.Copy _ = qt422016.AcquireByteBuffer ) //line lib/promscrape/targetstatus.qtpl:12 func StreamTargetsResponsePlain(qw422016 *qt422016.Writer, tsr *targetsStatusResult, filter *requestFilter) { //line lib/promscrape/targetstatus.qtpl:14 if tsr.err != nil { //line lib/promscrape/targetstatus.qtpl:15 qw422016.N().S(tsr.err.Error()) //line lib/promscrape/targetstatus.qtpl:16 return //line lib/promscrape/targetstatus.qtpl:17 } //line lib/promscrape/targetstatus.qtpl:19 for _, jts := range tsr.jobTargetsStatuses { //line lib/promscrape/targetstatus.qtpl:19 qw422016.N().S(`job=`) //line lib/promscrape/targetstatus.qtpl:20 qw422016.N().S(jts.jobName) //line lib/promscrape/targetstatus.qtpl:20 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:20 qw422016.N().S(`(`) //line lib/promscrape/targetstatus.qtpl:20 qw422016.N().D(jts.upCount) //line lib/promscrape/targetstatus.qtpl:20 qw422016.N().S(`/`) //line lib/promscrape/targetstatus.qtpl:20 qw422016.N().D(jts.targetsTotal) //line lib/promscrape/targetstatus.qtpl:20 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:20 qw422016.N().S(`up)`) //line lib/promscrape/targetstatus.qtpl:21 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:22 for _, ts := range jts.targetsStatus { //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(ts.sw.Config.Labels.String()) //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 filter.showOriginalLabels { //line lib/promscrape/targetstatus.qtpl:27 qw422016.N().S(`originalLabels=`) //line lib/promscrape/targetstatus.qtpl:27 qw422016.N().S(ts.sw.Config.OriginalLabels.String()) //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().S(ts.getDurationFromLastScrape()) //line lib/promscrape/targetstatus.qtpl:30 qw422016.N().S(`,`) //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(`scrape_response_size=`) //line lib/promscrape/targetstatus.qtpl:32 qw422016.N().S(ts.getSizeFromLastScrape()) //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(`samples_scraped=`) //line lib/promscrape/targetstatus.qtpl:33 qw422016.N().D(ts.samplesScraped) //line lib/promscrape/targetstatus.qtpl:33 qw422016.N().S(`,`) //line lib/promscrape/targetstatus.qtpl:33 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:33 qw422016.N().S(`error=`) //line lib/promscrape/targetstatus.qtpl:34 if ts.err != nil { //line lib/promscrape/targetstatus.qtpl:34 qw422016.N().S(ts.err.Error()) //line lib/promscrape/targetstatus.qtpl:34 } //line lib/promscrape/targetstatus.qtpl:35 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:36 } //line lib/promscrape/targetstatus.qtpl:37 } //line lib/promscrape/targetstatus.qtpl:39 for _, jobName := range tsr.emptyJobs { //line lib/promscrape/targetstatus.qtpl:39 qw422016.N().S(`job=`) //line lib/promscrape/targetstatus.qtpl:40 qw422016.N().S(jobName) //line lib/promscrape/targetstatus.qtpl:40 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:40 qw422016.N().S(`(0/0 up)`) //line lib/promscrape/targetstatus.qtpl:41 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:42 } //line lib/promscrape/targetstatus.qtpl:44 } //line lib/promscrape/targetstatus.qtpl:44 func WriteTargetsResponsePlain(qq422016 qtio422016.Writer, tsr *targetsStatusResult, filter *requestFilter) { //line lib/promscrape/targetstatus.qtpl:44 qw422016 := qt422016.AcquireWriter(qq422016) //line lib/promscrape/targetstatus.qtpl:44 StreamTargetsResponsePlain(qw422016, tsr, filter) //line lib/promscrape/targetstatus.qtpl:44 qt422016.ReleaseWriter(qw422016) //line lib/promscrape/targetstatus.qtpl:44 } //line lib/promscrape/targetstatus.qtpl:44 func TargetsResponsePlain(tsr *targetsStatusResult, filter *requestFilter) string { //line lib/promscrape/targetstatus.qtpl:44 qb422016 := qt422016.AcquireByteBuffer() //line lib/promscrape/targetstatus.qtpl:44 WriteTargetsResponsePlain(qb422016, tsr, filter) //line lib/promscrape/targetstatus.qtpl:44 qs422016 := string(qb422016.B) //line lib/promscrape/targetstatus.qtpl:44 qt422016.ReleaseByteBuffer(qb422016) //line lib/promscrape/targetstatus.qtpl:44 return qs422016 //line lib/promscrape/targetstatus.qtpl:44 } //line lib/promscrape/targetstatus.qtpl:46 func StreamTargetsResponseHTML(qw422016 *qt422016.Writer, tsr *targetsStatusResult, filter *requestFilter) { //line lib/promscrape/targetstatus.qtpl:46 qw422016.N().S(`<!DOCTYPE html><html lang="en"><head>`) //line lib/promscrape/targetstatus.qtpl:50 htmlcomponents.StreamCommonHeader(qw422016) //line lib/promscrape/targetstatus.qtpl:50 qw422016.N().S(`<title>Active Targets</title></head><body>`) //line lib/promscrape/targetstatus.qtpl:54 htmlcomponents.StreamNavbar(qw422016) //line lib/promscrape/targetstatus.qtpl:54 qw422016.N().S(`<div class="container-fluid">`) //line lib/promscrape/targetstatus.qtpl:56 if tsr.err != nil { //line lib/promscrape/targetstatus.qtpl:57 htmlcomponents.StreamErrorNotification(qw422016, tsr.err) //line lib/promscrape/targetstatus.qtpl:58 } //line lib/promscrape/targetstatus.qtpl:58 qw422016.N().S(`<div class="row"><main class="col-12"><h1>Active Targets</h1><hr />`) //line lib/promscrape/targetstatus.qtpl:63 streamfiltersForm(qw422016, filter) //line lib/promscrape/targetstatus.qtpl:63 qw422016.N().S(`<hr />`) //line lib/promscrape/targetstatus.qtpl:65 streamtargetsTabs(qw422016, tsr, filter, "scrapeTargets") //line lib/promscrape/targetstatus.qtpl:65 qw422016.N().S(`</main></div></div></body></html>`) //line lib/promscrape/targetstatus.qtpl:71 } //line lib/promscrape/targetstatus.qtpl:71 func WriteTargetsResponseHTML(qq422016 qtio422016.Writer, tsr *targetsStatusResult, filter *requestFilter) { //line lib/promscrape/targetstatus.qtpl:71 qw422016 := qt422016.AcquireWriter(qq422016) //line lib/promscrape/targetstatus.qtpl:71 StreamTargetsResponseHTML(qw422016, tsr, filter) //line lib/promscrape/targetstatus.qtpl:71 qt422016.ReleaseWriter(qw422016) //line lib/promscrape/targetstatus.qtpl:71 } //line lib/promscrape/targetstatus.qtpl:71 func TargetsResponseHTML(tsr *targetsStatusResult, filter *requestFilter) string { //line lib/promscrape/targetstatus.qtpl:71 qb422016 := qt422016.AcquireByteBuffer() //line lib/promscrape/targetstatus.qtpl:71 WriteTargetsResponseHTML(qb422016, tsr, filter) //line lib/promscrape/targetstatus.qtpl:71 qs422016 := string(qb422016.B) //line lib/promscrape/targetstatus.qtpl:71 qt422016.ReleaseByteBuffer(qb422016) //line lib/promscrape/targetstatus.qtpl:71 return qs422016 //line lib/promscrape/targetstatus.qtpl:71 } //line lib/promscrape/targetstatus.qtpl:73 func StreamServiceDiscoveryResponse(qw422016 *qt422016.Writer, tsr *targetsStatusResult, filter *requestFilter) { //line lib/promscrape/targetstatus.qtpl:73 qw422016.N().S(`<!DOCTYPE html><html lang="en"><head>`) //line lib/promscrape/targetstatus.qtpl:77 htmlcomponents.StreamCommonHeader(qw422016) //line lib/promscrape/targetstatus.qtpl:77 qw422016.N().S(`<title>Discovered Targets</title></head><body>`) //line lib/promscrape/targetstatus.qtpl:81 htmlcomponents.StreamNavbar(qw422016) //line lib/promscrape/targetstatus.qtpl:81 qw422016.N().S(`<div class="container-fluid">`) //line lib/promscrape/targetstatus.qtpl:83 if tsr.err != nil { //line lib/promscrape/targetstatus.qtpl:84 htmlcomponents.StreamErrorNotification(qw422016, tsr.err) //line lib/promscrape/targetstatus.qtpl:85 } //line lib/promscrape/targetstatus.qtpl:85 qw422016.N().S(`<div class="row"><main class="col-12"><h1>Discovered Targets</h1><hr />`) //line lib/promscrape/targetstatus.qtpl:90 streamfiltersForm(qw422016, filter) //line lib/promscrape/targetstatus.qtpl:90 qw422016.N().S(`<hr />`) //line lib/promscrape/targetstatus.qtpl:92 streamtargetsTabs(qw422016, tsr, filter, "discoveredTargets") //line lib/promscrape/targetstatus.qtpl:92 qw422016.N().S(`</main></div></div></body></html>`) //line lib/promscrape/targetstatus.qtpl:98 } //line lib/promscrape/targetstatus.qtpl:98 func WriteServiceDiscoveryResponse(qq422016 qtio422016.Writer, tsr *targetsStatusResult, filter *requestFilter) { //line lib/promscrape/targetstatus.qtpl:98 qw422016 := qt422016.AcquireWriter(qq422016) //line lib/promscrape/targetstatus.qtpl:98 StreamServiceDiscoveryResponse(qw422016, tsr, filter) //line lib/promscrape/targetstatus.qtpl:98 qt422016.ReleaseWriter(qw422016) //line lib/promscrape/targetstatus.qtpl:98 } //line lib/promscrape/targetstatus.qtpl:98 func ServiceDiscoveryResponse(tsr *targetsStatusResult, filter *requestFilter) string { //line lib/promscrape/targetstatus.qtpl:98 qb422016 := qt422016.AcquireByteBuffer() //line lib/promscrape/targetstatus.qtpl:98 WriteServiceDiscoveryResponse(qb422016, tsr, filter) //line lib/promscrape/targetstatus.qtpl:98 qs422016 := string(qb422016.B) //line lib/promscrape/targetstatus.qtpl:98 qt422016.ReleaseByteBuffer(qb422016) //line lib/promscrape/targetstatus.qtpl:98 return qs422016 //line lib/promscrape/targetstatus.qtpl:98 } //line lib/promscrape/targetstatus.qtpl:100 func streamfiltersForm(qw422016 *qt422016.Writer, filter *requestFilter) { //line lib/promscrape/targetstatus.qtpl:100 qw422016.N().S(`<div class="row g-3 align-items-center mb-3"><div class="col-auto"><button id="all-btn" type="button" class="btn`) //line lib/promscrape/targetstatus.qtpl:103 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:103 if !filter.showOnlyUnhealthy { //line lib/promscrape/targetstatus.qtpl:103 qw422016.N().S(`btn-secondary`) //line lib/promscrape/targetstatus.qtpl:103 } else { //line lib/promscrape/targetstatus.qtpl:103 qw422016.N().S(`btn-success`) //line lib/promscrape/targetstatus.qtpl:103 } //line lib/promscrape/targetstatus.qtpl:103 qw422016.N().S(`"onclick="location.href='?`) //line lib/promscrape/targetstatus.qtpl:104 streamqueryArgs(qw422016, filter, map[string]string{"show_only_unhealthy": "false"}) //line lib/promscrape/targetstatus.qtpl:104 qw422016.N().S(`'">All</button></div><div class="col-auto"><button id="unhealthy-btn" type="button" class="btn`) //line lib/promscrape/targetstatus.qtpl:109 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:109 if filter.showOnlyUnhealthy { //line lib/promscrape/targetstatus.qtpl:109 qw422016.N().S(`btn-secondary`) //line lib/promscrape/targetstatus.qtpl:109 } else { //line lib/promscrape/targetstatus.qtpl:109 qw422016.N().S(`btn-danger`) //line lib/promscrape/targetstatus.qtpl:109 } //line lib/promscrape/targetstatus.qtpl:109 qw422016.N().S(`"onclick="location.href='?`) //line lib/promscrape/targetstatus.qtpl:110 streamqueryArgs(qw422016, filter, map[string]string{"show_only_unhealthy": "true"}) //line lib/promscrape/targetstatus.qtpl:110 qw422016.N().S(`'">Unhealthy</button></div><div class="col-auto"><button type="button" class="btn btn-primary" onclick="document.querySelectorAll('.scrape-job').forEach((el) => { el.style.display = 'none'; })">Collapse all</button></div><div class="col-auto"><button type="button" class="btn btn-secondary" onclick="document.querySelectorAll('.scrape-job').forEach((el) => { el.style.display = 'block'; })">Expand all</button></div><div class="col-auto"><button type="button" class="btn btn-success" onclick="document.getElementById('filters').style.display='block'">Filter targets</button></div></div><div id="filters"`) //line lib/promscrape/targetstatus.qtpl:130 if filter.endpointSearch == "" && filter.labelSearch == "" { //line lib/promscrape/targetstatus.qtpl:130 qw422016.N().S(`style="display:none"`) //line lib/promscrape/targetstatus.qtpl:130 } //line lib/promscrape/targetstatus.qtpl:130 qw422016.N().S(`><form class="form-horizontal"><div class="form-group mb-3"><label for="endpoint_search" class="col-sm-10 control-label">Endpoint filter (<a target="_blank" href="https://github.com/google/re2/wiki/Syntax">Regexp</a> is accepted)</label><div class="col-sm-10"><input type="text" id="endpoint_search" name="endpoint_search"placeholder="For example, 127.0.0.1" class="form-control" value="`) //line lib/promscrape/targetstatus.qtpl:136 qw422016.E().S(filter.endpointSearch) //line lib/promscrape/targetstatus.qtpl:136 qw422016.N().S(`"/></div></div><div class="form-group mb-3"><label for="label_search" class="col-sm-10 control-label">Labels filter (<a target="_blank" href="https://prometheus.io/docs/prometheus/latest/querying/basics/#time-series-selectors">Arbitrary time series selectors</a> are accepted)</label><div class="col-sm-10"><input type="text" id="label_search" name="label_search"placeholder="For example, {instance=~'.+:9100'}" class="form-control" value="`) //line lib/promscrape/targetstatus.qtpl:143 qw422016.E().S(filter.labelSearch) //line lib/promscrape/targetstatus.qtpl:143 qw422016.N().S(`"/></div></div><input type="hidden" name="show_only_unhealthy" value="`) //line lib/promscrape/targetstatus.qtpl:146 qw422016.E().V(filter.showOnlyUnhealthy) //line lib/promscrape/targetstatus.qtpl:146 qw422016.N().S(`"/><input type="hidden" name="show_original_labels" value="`) //line lib/promscrape/targetstatus.qtpl:147 qw422016.E().V(filter.showOriginalLabels) //line lib/promscrape/targetstatus.qtpl:147 qw422016.N().S(`"/><button type="submit" class="btn btn-success mb-3">Submit</button><button type="button" class="btn btn-danger mb-3" onclick="location.href='?'">Clear target filters</button></form></div>`) //line lib/promscrape/targetstatus.qtpl:152 } //line lib/promscrape/targetstatus.qtpl:152 func writefiltersForm(qq422016 qtio422016.Writer, filter *requestFilter) { //line lib/promscrape/targetstatus.qtpl:152 qw422016 := qt422016.AcquireWriter(qq422016) //line lib/promscrape/targetstatus.qtpl:152 streamfiltersForm(qw422016, filter) //line lib/promscrape/targetstatus.qtpl:152 qt422016.ReleaseWriter(qw422016) //line lib/promscrape/targetstatus.qtpl:152 } //line lib/promscrape/targetstatus.qtpl:152 func filtersForm(filter *requestFilter) string { //line lib/promscrape/targetstatus.qtpl:152 qb422016 := qt422016.AcquireByteBuffer() //line lib/promscrape/targetstatus.qtpl:152 writefiltersForm(qb422016, filter) //line lib/promscrape/targetstatus.qtpl:152 qs422016 := string(qb422016.B) //line lib/promscrape/targetstatus.qtpl:152 qt422016.ReleaseByteBuffer(qb422016) //line lib/promscrape/targetstatus.qtpl:152 return qs422016 //line lib/promscrape/targetstatus.qtpl:152 } //line lib/promscrape/targetstatus.qtpl:154 func streamtargetsTabs(qw422016 *qt422016.Writer, tsr *targetsStatusResult, filter *requestFilter, activeTab string) { //line lib/promscrape/targetstatus.qtpl:154 qw422016.N().S(`<ul class="nav nav-tabs" id="myTab" role="tablist"><li class="nav-item" role="presentation"><button class="nav-link`) //line lib/promscrape/targetstatus.qtpl:157 if activeTab == "scrapeTargets" { //line lib/promscrape/targetstatus.qtpl:157 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:157 qw422016.N().S(`active`) //line lib/promscrape/targetstatus.qtpl:157 } //line lib/promscrape/targetstatus.qtpl:157 qw422016.N().S(`" type="button" role="tab"onclick="location.href='targets?`) //line lib/promscrape/targetstatus.qtpl:158 streamqueryArgs(qw422016, filter, nil) //line lib/promscrape/targetstatus.qtpl:158 qw422016.N().S(`'">Active targets</button></li><li class="nav-item" role="presentation"><button class="nav-link`) //line lib/promscrape/targetstatus.qtpl:163 if activeTab == "discoveredTargets" { //line lib/promscrape/targetstatus.qtpl:163 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:163 qw422016.N().S(`active`) //line lib/promscrape/targetstatus.qtpl:163 } //line lib/promscrape/targetstatus.qtpl:163 qw422016.N().S(`" type="button" role="tab"onclick="location.href='service-discovery?`) //line lib/promscrape/targetstatus.qtpl:164 streamqueryArgs(qw422016, filter, nil) //line lib/promscrape/targetstatus.qtpl:164 qw422016.N().S(`'">Discovered targets</button></li></ul><div class="tab-content"><div class="tab-pane active" role="tabpanel">`) //line lib/promscrape/targetstatus.qtpl:171 switch activeTab { //line lib/promscrape/targetstatus.qtpl:172 case "scrapeTargets": //line lib/promscrape/targetstatus.qtpl:173 streamscrapeTargets(qw422016, tsr) //line lib/promscrape/targetstatus.qtpl:174 case "discoveredTargets": //line lib/promscrape/targetstatus.qtpl:175 streamdiscoveredTargets(qw422016, tsr) //line lib/promscrape/targetstatus.qtpl:176 } //line lib/promscrape/targetstatus.qtpl:176 qw422016.N().S(`</div></div>`) //line lib/promscrape/targetstatus.qtpl:179 } //line lib/promscrape/targetstatus.qtpl:179 func writetargetsTabs(qq422016 qtio422016.Writer, tsr *targetsStatusResult, filter *requestFilter, activeTab string) { //line lib/promscrape/targetstatus.qtpl:179 qw422016 := qt422016.AcquireWriter(qq422016) //line lib/promscrape/targetstatus.qtpl:179 streamtargetsTabs(qw422016, tsr, filter, activeTab) //line lib/promscrape/targetstatus.qtpl:179 qt422016.ReleaseWriter(qw422016) //line lib/promscrape/targetstatus.qtpl:179 } //line lib/promscrape/targetstatus.qtpl:179 func targetsTabs(tsr *targetsStatusResult, filter *requestFilter, activeTab string) string { //line lib/promscrape/targetstatus.qtpl:179 qb422016 := qt422016.AcquireByteBuffer() //line lib/promscrape/targetstatus.qtpl:179 writetargetsTabs(qb422016, tsr, filter, activeTab) //line lib/promscrape/targetstatus.qtpl:179 qs422016 := string(qb422016.B) //line lib/promscrape/targetstatus.qtpl:179 qt422016.ReleaseByteBuffer(qb422016) //line lib/promscrape/targetstatus.qtpl:179 return qs422016 //line lib/promscrape/targetstatus.qtpl:179 } //line lib/promscrape/targetstatus.qtpl:181 func streamscrapeTargets(qw422016 *qt422016.Writer, tsr *targetsStatusResult) { //line lib/promscrape/targetstatus.qtpl:181 qw422016.N().S(`<div class="row mt-4"><div class="col-12">`) //line lib/promscrape/targetstatus.qtpl:184 for i, jts := range tsr.jobTargetsStatuses { //line lib/promscrape/targetstatus.qtpl:185 streamscrapeJobTargets(qw422016, i, jts, tsr.hasOriginalLabels) //line lib/promscrape/targetstatus.qtpl:186 } //line lib/promscrape/targetstatus.qtpl:187 for i, jobName := range tsr.emptyJobs { //line lib/promscrape/targetstatus.qtpl:189 num := i + len(tsr.jobTargetsStatuses) jts := &jobTargetsStatuses{ jobName: jobName, } //line lib/promscrape/targetstatus.qtpl:194 streamscrapeJobTargets(qw422016, num, jts, tsr.hasOriginalLabels) //line lib/promscrape/targetstatus.qtpl:195 } //line lib/promscrape/targetstatus.qtpl:195 qw422016.N().S(`</div></div>`) //line lib/promscrape/targetstatus.qtpl:198 } //line lib/promscrape/targetstatus.qtpl:198 func writescrapeTargets(qq422016 qtio422016.Writer, tsr *targetsStatusResult) { //line lib/promscrape/targetstatus.qtpl:198 qw422016 := qt422016.AcquireWriter(qq422016) //line lib/promscrape/targetstatus.qtpl:198 streamscrapeTargets(qw422016, tsr) //line lib/promscrape/targetstatus.qtpl:198 qt422016.ReleaseWriter(qw422016) //line lib/promscrape/targetstatus.qtpl:198 } //line lib/promscrape/targetstatus.qtpl:198 func scrapeTargets(tsr *targetsStatusResult) string { //line lib/promscrape/targetstatus.qtpl:198 qb422016 := qt422016.AcquireByteBuffer() //line lib/promscrape/targetstatus.qtpl:198 writescrapeTargets(qb422016, tsr) //line lib/promscrape/targetstatus.qtpl:198 qs422016 := string(qb422016.B) //line lib/promscrape/targetstatus.qtpl:198 qt422016.ReleaseByteBuffer(qb422016) //line lib/promscrape/targetstatus.qtpl:198 return qs422016 //line lib/promscrape/targetstatus.qtpl:198 } //line lib/promscrape/targetstatus.qtpl:200 func streamscrapeJobTargets(qw422016 *qt422016.Writer, num int, jts *jobTargetsStatuses, hasOriginalLabels bool) { //line lib/promscrape/targetstatus.qtpl:200 qw422016.N().S(`<div class="row mb-4"><div class="col-12"><h4><span class="me-2">`) //line lib/promscrape/targetstatus.qtpl:204 qw422016.E().S(jts.jobName) //line lib/promscrape/targetstatus.qtpl:204 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:204 qw422016.N().S(`(`) //line lib/promscrape/targetstatus.qtpl:204 qw422016.N().D(jts.upCount) //line lib/promscrape/targetstatus.qtpl:204 qw422016.N().S(`/`) //line lib/promscrape/targetstatus.qtpl:204 qw422016.N().D(jts.targetsTotal) //line lib/promscrape/targetstatus.qtpl:204 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:204 qw422016.N().S(`up)</span>`) //line lib/promscrape/targetstatus.qtpl:205 streamshowHideScrapeJobButtons(qw422016, num) //line lib/promscrape/targetstatus.qtpl:205 qw422016.N().S(`</h4><div id="scrape-job-`) //line lib/promscrape/targetstatus.qtpl:207 qw422016.N().D(num) //line lib/promscrape/targetstatus.qtpl:207 qw422016.N().S(`" class="scrape-job table-responsive"><table class="table table-striped table-hover table-bordered table-sm"><thead><tr><th scope="col">Endpoint</th><th scope="col">State</th><th scope="col" title="target labels">Labels</th>`) //line lib/promscrape/targetstatus.qtpl:214 if hasOriginalLabels { //line lib/promscrape/targetstatus.qtpl:214 qw422016.N().S(`<th scope="col" title="debug relabeling">Debug relabeling</th>`) //line lib/promscrape/targetstatus.qtpl:216 } //line lib/promscrape/targetstatus.qtpl:216 qw422016.N().S(`<th scope="col" title="total scrapes">Scrapes</th><th scope="col" title="total scrape errors">Errors</th><th scope="col" title="the time of the last scrape">Last Scrape</th><th scope="col" title="the duration of the last scrape">Duration</th><th scope="col" title="the size of the last scrape">Last Scrape Size</th><th scope="col" title="the number of metrics scraped during the last scrape">Samples</th><th scope="col" title="error from the last scrape (if any)">Last error</th></tr></thead><tbody>`) //line lib/promscrape/targetstatus.qtpl:227 for _, ts := range jts.targetsStatus { //line lib/promscrape/targetstatus.qtpl:229 endpoint := ts.sw.Config.ScrapeURL originalLabels := ts.sw.Config.OriginalLabels // The target is uniquely identified by a pointer to its original labels. targetID := getLabelsID(originalLabels) //line lib/promscrape/targetstatus.qtpl:234 qw422016.N().S(`<tr`) //line lib/promscrape/targetstatus.qtpl:235 if !ts.up { //line lib/promscrape/targetstatus.qtpl:235 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:235 qw422016.N().S(`class="alert alert-danger" role="alert"`) //line lib/promscrape/targetstatus.qtpl:235 } //line lib/promscrape/targetstatus.qtpl:235 qw422016.N().S(`><td class="endpoint"><a href="`) //line lib/promscrape/targetstatus.qtpl:237 qw422016.E().S(endpoint) //line lib/promscrape/targetstatus.qtpl:237 qw422016.N().S(`" target="_blank">`) //line lib/promscrape/targetstatus.qtpl:237 qw422016.E().S(endpoint) //line lib/promscrape/targetstatus.qtpl:237 qw422016.N().S(`</a>`) //line lib/promscrape/targetstatus.qtpl:238 if hasOriginalLabels { //line lib/promscrape/targetstatus.qtpl:239 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:239 qw422016.N().S(`(<a href="target_response?id=`) //line lib/promscrape/targetstatus.qtpl:240 qw422016.E().S(targetID) //line lib/promscrape/targetstatus.qtpl:240 qw422016.N().S(`" target="_blank"title="click to fetch target response on behalf of the scraper">response</a>)`) //line lib/promscrape/targetstatus.qtpl:242 } //line lib/promscrape/targetstatus.qtpl:242 qw422016.N().S(`</td><td>`) //line lib/promscrape/targetstatus.qtpl:245 if ts.up { //line lib/promscrape/targetstatus.qtpl:245 qw422016.N().S(`<span class="badge bg-success">UP</span>`) //line lib/promscrape/targetstatus.qtpl:247 } else { //line lib/promscrape/targetstatus.qtpl:247 qw422016.N().S(`<span class="badge bg-danger">DOWN</span>`) //line lib/promscrape/targetstatus.qtpl:249 } //line lib/promscrape/targetstatus.qtpl:249 qw422016.N().S(`</td><td class="labels"><div`) //line lib/promscrape/targetstatus.qtpl:253 if hasOriginalLabels { //line lib/promscrape/targetstatus.qtpl:254 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:254 qw422016.N().S(`title="click to show original labels"onclick="document.getElementById('original-labels-`) //line lib/promscrape/targetstatus.qtpl:255 qw422016.E().S(targetID) //line lib/promscrape/targetstatus.qtpl:255 qw422016.N().S(`').style.display='block'"`) //line lib/promscrape/targetstatus.qtpl:256 } //line lib/promscrape/targetstatus.qtpl:256 qw422016.N().S(`>`) //line lib/promscrape/targetstatus.qtpl:258 streamformatLabels(qw422016, ts.sw.Config.Labels) //line lib/promscrape/targetstatus.qtpl:258 qw422016.N().S(`</div>`) //line lib/promscrape/targetstatus.qtpl:260 if hasOriginalLabels { //line lib/promscrape/targetstatus.qtpl:260 qw422016.N().S(`<div style="display:none" id="original-labels-`) //line lib/promscrape/targetstatus.qtpl:261 qw422016.E().S(targetID) //line lib/promscrape/targetstatus.qtpl:261 qw422016.N().S(`">`) //line lib/promscrape/targetstatus.qtpl:262 streamformatLabels(qw422016, originalLabels) //line lib/promscrape/targetstatus.qtpl:262 qw422016.N().S(`</div>`) //line lib/promscrape/targetstatus.qtpl:264 } //line lib/promscrape/targetstatus.qtpl:264 qw422016.N().S(`</td>`) //line lib/promscrape/targetstatus.qtpl:266 if hasOriginalLabels { //line lib/promscrape/targetstatus.qtpl:266 qw422016.N().S(`<td><a href="target-relabel-debug?id=`) //line lib/promscrape/targetstatus.qtpl:268 qw422016.E().S(targetID) //line lib/promscrape/targetstatus.qtpl:268 qw422016.N().S(`" target="_blank">target</a>`) //line lib/promscrape/targetstatus.qtpl:268 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:268 qw422016.N().S(`<a href="metric-relabel-debug?id=`) //line lib/promscrape/targetstatus.qtpl:269 qw422016.E().S(targetID) //line lib/promscrape/targetstatus.qtpl:269 qw422016.N().S(`" target="_blank">metrics</a></td>`) //line lib/promscrape/targetstatus.qtpl:271 } //line lib/promscrape/targetstatus.qtpl:271 qw422016.N().S(`<td>`) //line lib/promscrape/targetstatus.qtpl:272 qw422016.N().D(ts.scrapesTotal) //line lib/promscrape/targetstatus.qtpl:272 qw422016.N().S(`</td><td>`) //line lib/promscrape/targetstatus.qtpl:273 qw422016.N().D(ts.scrapesFailed) //line lib/promscrape/targetstatus.qtpl:273 qw422016.N().S(`</td><td>`) //line lib/promscrape/targetstatus.qtpl:274 qw422016.E().S(ts.getDurationFromLastScrape()) //line lib/promscrape/targetstatus.qtpl:274 qw422016.N().S(`</td><td>`) //line lib/promscrape/targetstatus.qtpl:275 qw422016.N().D(int(ts.scrapeDuration)) //line lib/promscrape/targetstatus.qtpl:275 qw422016.N().S(`ms</td><td>`) //line lib/promscrape/targetstatus.qtpl:276 qw422016.E().S(ts.getSizeFromLastScrape()) //line lib/promscrape/targetstatus.qtpl:276 qw422016.N().S(`</td><td>`) //line lib/promscrape/targetstatus.qtpl:277 qw422016.N().D(ts.samplesScraped) //line lib/promscrape/targetstatus.qtpl:277 qw422016.N().S(`</td><td>`) //line lib/promscrape/targetstatus.qtpl:278 if ts.err != nil { //line lib/promscrape/targetstatus.qtpl:278 qw422016.E().S(ts.err.Error()) //line lib/promscrape/targetstatus.qtpl:278 } //line lib/promscrape/targetstatus.qtpl:278 qw422016.N().S(`</td></tr>`) //line lib/promscrape/targetstatus.qtpl:280 } //line lib/promscrape/targetstatus.qtpl:280 qw422016.N().S(`</tbody></table></div></div></div>`) //line lib/promscrape/targetstatus.qtpl:286 } //line lib/promscrape/targetstatus.qtpl:286 func writescrapeJobTargets(qq422016 qtio422016.Writer, num int, jts *jobTargetsStatuses, hasOriginalLabels bool) { //line lib/promscrape/targetstatus.qtpl:286 qw422016 := qt422016.AcquireWriter(qq422016) //line lib/promscrape/targetstatus.qtpl:286 streamscrapeJobTargets(qw422016, num, jts, hasOriginalLabels) //line lib/promscrape/targetstatus.qtpl:286 qt422016.ReleaseWriter(qw422016) //line lib/promscrape/targetstatus.qtpl:286 } //line lib/promscrape/targetstatus.qtpl:286 func scrapeJobTargets(num int, jts *jobTargetsStatuses, hasOriginalLabels bool) string { //line lib/promscrape/targetstatus.qtpl:286 qb422016 := qt422016.AcquireByteBuffer() //line lib/promscrape/targetstatus.qtpl:286 writescrapeJobTargets(qb422016, num, jts, hasOriginalLabels) //line lib/promscrape/targetstatus.qtpl:286 qs422016 := string(qb422016.B) //line lib/promscrape/targetstatus.qtpl:286 qt422016.ReleaseByteBuffer(qb422016) //line lib/promscrape/targetstatus.qtpl:286 return qs422016 //line lib/promscrape/targetstatus.qtpl:286 } //line lib/promscrape/targetstatus.qtpl:288 func streamdiscoveredTargets(qw422016 *qt422016.Writer, tsr *targetsStatusResult) { //line lib/promscrape/targetstatus.qtpl:289 if !tsr.hasOriginalLabels { //line lib/promscrape/targetstatus.qtpl:289 qw422016.N().S(`<div class="alert alert-warning" role="alert">Discovered targets are unavailable when <b>-promscrape.dropOriginalLabels</b> command-line flag is set</div>`) //line lib/promscrape/targetstatus.qtpl:293 return //line lib/promscrape/targetstatus.qtpl:294 } //line lib/promscrape/targetstatus.qtpl:296 if n := droppedTargetsMap.getTotalTargets(); n > *maxDroppedTargets { //line lib/promscrape/targetstatus.qtpl:296 qw422016.N().S(`<div class="alert alert-warning" role="alert">Dropped targets' list below is incomplete, because the number of dropped targets exceeds <b>-promscrape.maxDroppedTargets=`) //line lib/promscrape/targetstatus.qtpl:298 qw422016.N().D(*maxDroppedTargets) //line lib/promscrape/targetstatus.qtpl:298 qw422016.N().S(`</b>.<br/>If you want to see the full list of dropped targets, then increase <b>-promscrape.maxDroppedTargets</b> command-line flag value to at least`) //line lib/promscrape/targetstatus.qtpl:299 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:299 qw422016.N().S(`<b>`) //line lib/promscrape/targetstatus.qtpl:299 qw422016.N().D(n) //line lib/promscrape/targetstatus.qtpl:299 qw422016.N().S(`</b>.<br/>Note that this may increase memory usage.</div>`) //line lib/promscrape/targetstatus.qtpl:302 } //line lib/promscrape/targetstatus.qtpl:304 tljs := tsr.getTargetLabelsByJob() //line lib/promscrape/targetstatus.qtpl:304 qw422016.N().S(`<div class="row mt-4"><div class="col-12">`) //line lib/promscrape/targetstatus.qtpl:307 for i, tlj := range tljs { //line lib/promscrape/targetstatus.qtpl:308 streamdiscoveredJobTargets(qw422016, i, tlj) //line lib/promscrape/targetstatus.qtpl:309 } //line lib/promscrape/targetstatus.qtpl:309 qw422016.N().S(`</div></div>`) //line lib/promscrape/targetstatus.qtpl:312 } //line lib/promscrape/targetstatus.qtpl:312 func writediscoveredTargets(qq422016 qtio422016.Writer, tsr *targetsStatusResult) { //line lib/promscrape/targetstatus.qtpl:312 qw422016 := qt422016.AcquireWriter(qq422016) //line lib/promscrape/targetstatus.qtpl:312 streamdiscoveredTargets(qw422016, tsr) //line lib/promscrape/targetstatus.qtpl:312 qt422016.ReleaseWriter(qw422016) //line lib/promscrape/targetstatus.qtpl:312 } //line lib/promscrape/targetstatus.qtpl:312 func discoveredTargets(tsr *targetsStatusResult) string { //line lib/promscrape/targetstatus.qtpl:312 qb422016 := qt422016.AcquireByteBuffer() //line lib/promscrape/targetstatus.qtpl:312 writediscoveredTargets(qb422016, tsr) //line lib/promscrape/targetstatus.qtpl:312 qs422016 := string(qb422016.B) //line lib/promscrape/targetstatus.qtpl:312 qt422016.ReleaseByteBuffer(qb422016) //line lib/promscrape/targetstatus.qtpl:312 return qs422016 //line lib/promscrape/targetstatus.qtpl:312 } //line lib/promscrape/targetstatus.qtpl:314 func streamdiscoveredJobTargets(qw422016 *qt422016.Writer, num int, tlj *targetLabelsByJob) { //line lib/promscrape/targetstatus.qtpl:314 qw422016.N().S(`<h4><span class="me-2">`) //line lib/promscrape/targetstatus.qtpl:316 qw422016.E().S(tlj.jobName) //line lib/promscrape/targetstatus.qtpl:316 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:316 qw422016.N().S(`(`) //line lib/promscrape/targetstatus.qtpl:316 qw422016.N().D(tlj.activeTargets) //line lib/promscrape/targetstatus.qtpl:316 qw422016.N().S(`/`) //line lib/promscrape/targetstatus.qtpl:316 qw422016.N().D(tlj.activeTargets + tlj.droppedTargets) //line lib/promscrape/targetstatus.qtpl:316 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:316 qw422016.N().S(`active)</span>`) //line lib/promscrape/targetstatus.qtpl:317 streamshowHideScrapeJobButtons(qw422016, num) //line lib/promscrape/targetstatus.qtpl:317 qw422016.N().S(`</h4><div id="scrape-job-`) //line lib/promscrape/targetstatus.qtpl:319 qw422016.N().D(num) //line lib/promscrape/targetstatus.qtpl:319 qw422016.N().S(`" class="scrape-job table-responsive"><table class="table table-striped table-hover table-bordered table-sm"><thead><tr><th scope="col" style="width: 5%">Status</th><th scope="col" style="width: 60%">Discovered Labels</th><th scope="col" style="width: 30%">Target Labels</th><th scope="col" stile="width: 5%">Debug relabeling</a></tr></thead><tbody>`) //line lib/promscrape/targetstatus.qtpl:330 for _, t := range tlj.targets { //line lib/promscrape/targetstatus.qtpl:330 qw422016.N().S(`<tr`) //line lib/promscrape/targetstatus.qtpl:332 if !t.up { //line lib/promscrape/targetstatus.qtpl:333 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:333 qw422016.N().S(`role="alert"`) //line lib/promscrape/targetstatus.qtpl:333 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:334 if t.labels.Len() > 0 { //line lib/promscrape/targetstatus.qtpl:334 qw422016.N().S(`class="alert alert-danger"`) //line lib/promscrape/targetstatus.qtpl:336 } else { //line lib/promscrape/targetstatus.qtpl:336 qw422016.N().S(`class="alert alert-warning"`) //line lib/promscrape/targetstatus.qtpl:338 } //line lib/promscrape/targetstatus.qtpl:339 } //line lib/promscrape/targetstatus.qtpl:339 qw422016.N().S(`><td>`) //line lib/promscrape/targetstatus.qtpl:342 if t.up { //line lib/promscrape/targetstatus.qtpl:342 qw422016.N().S(`<span class="badge bg-success">UP</span>`) //line lib/promscrape/targetstatus.qtpl:344 } else if t.labels.Len() > 0 { //line lib/promscrape/targetstatus.qtpl:344 qw422016.N().S(`<span class="badge bg-danger">DOWN</span>`) //line lib/promscrape/targetstatus.qtpl:346 } else { //line lib/promscrape/targetstatus.qtpl:346 qw422016.N().S(`<span class="badge bg-warning">DROPPED (`) //line lib/promscrape/targetstatus.qtpl:347 qw422016.E().S(string(t.dropReason)) //line lib/promscrape/targetstatus.qtpl:347 qw422016.N().S(`)</span>`) //line lib/promscrape/targetstatus.qtpl:348 if len(t.clusterMemberNums) > 0 { //line lib/promscrape/targetstatus.qtpl:348 qw422016.N().S(`<br/><span title="The target exists at vmagent instances with the given -promscrape.cluster.memberNum values">exists at`) //line lib/promscrape/targetstatus.qtpl:351 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:352 for i, memberNum := range t.clusterMemberNums { //line lib/promscrape/targetstatus.qtpl:353 if *clusterMemberURLTemplate == "" { //line lib/promscrape/targetstatus.qtpl:353 qw422016.N().S(`shard-`) //line lib/promscrape/targetstatus.qtpl:354 qw422016.N().D(memberNum) //line lib/promscrape/targetstatus.qtpl:355 } else { //line lib/promscrape/targetstatus.qtpl:355 qw422016.N().S(`<a href="`) //line lib/promscrape/targetstatus.qtpl:356 qw422016.E().S(strings.ReplaceAll(*clusterMemberURLTemplate, "%d", strconv.Itoa(memberNum))) //line lib/promscrape/targetstatus.qtpl:356 qw422016.N().S(`" target="_blank">shard-`) //line lib/promscrape/targetstatus.qtpl:356 qw422016.N().D(memberNum) //line lib/promscrape/targetstatus.qtpl:356 qw422016.N().S(`</a>`) //line lib/promscrape/targetstatus.qtpl:357 } //line lib/promscrape/targetstatus.qtpl:358 if i+1 < len(t.clusterMemberNums) { //line lib/promscrape/targetstatus.qtpl:358 qw422016.N().S(`,`) //line lib/promscrape/targetstatus.qtpl:358 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:358 } //line lib/promscrape/targetstatus.qtpl:359 } //line lib/promscrape/targetstatus.qtpl:360 } //line lib/promscrape/targetstatus.qtpl:361 } //line lib/promscrape/targetstatus.qtpl:361 qw422016.N().S(`</td><td class="labels">`) //line lib/promscrape/targetstatus.qtpl:364 streamformatLabels(qw422016, t.originalLabels) //line lib/promscrape/targetstatus.qtpl:364 qw422016.N().S(`</td><td class="labels">`) //line lib/promscrape/targetstatus.qtpl:367 streamformatLabels(qw422016, t.labels) //line lib/promscrape/targetstatus.qtpl:367 qw422016.N().S(`</td><td>`) //line lib/promscrape/targetstatus.qtpl:370 targetID := getLabelsID(t.originalLabels) //line lib/promscrape/targetstatus.qtpl:370 qw422016.N().S(`<a href="target-relabel-debug?id=`) //line lib/promscrape/targetstatus.qtpl:371 qw422016.E().S(targetID) //line lib/promscrape/targetstatus.qtpl:371 qw422016.N().S(`" target="_blank">debug</a></td></tr>`) //line lib/promscrape/targetstatus.qtpl:374 } //line lib/promscrape/targetstatus.qtpl:374 qw422016.N().S(`</tbody></table></div>`) //line lib/promscrape/targetstatus.qtpl:378 } //line lib/promscrape/targetstatus.qtpl:378 func writediscoveredJobTargets(qq422016 qtio422016.Writer, num int, tlj *targetLabelsByJob) { //line lib/promscrape/targetstatus.qtpl:378 qw422016 := qt422016.AcquireWriter(qq422016) //line lib/promscrape/targetstatus.qtpl:378 streamdiscoveredJobTargets(qw422016, num, tlj) //line lib/promscrape/targetstatus.qtpl:378 qt422016.ReleaseWriter(qw422016) //line lib/promscrape/targetstatus.qtpl:378 } //line lib/promscrape/targetstatus.qtpl:378 func discoveredJobTargets(num int, tlj *targetLabelsByJob) string { //line lib/promscrape/targetstatus.qtpl:378 qb422016 := qt422016.AcquireByteBuffer() //line lib/promscrape/targetstatus.qtpl:378 writediscoveredJobTargets(qb422016, num, tlj) //line lib/promscrape/targetstatus.qtpl:378 qs422016 := string(qb422016.B) //line lib/promscrape/targetstatus.qtpl:378 qt422016.ReleaseByteBuffer(qb422016) //line lib/promscrape/targetstatus.qtpl:378 return qs422016 //line lib/promscrape/targetstatus.qtpl:378 } //line lib/promscrape/targetstatus.qtpl:380 func streamshowHideScrapeJobButtons(qw422016 *qt422016.Writer, num int) { //line lib/promscrape/targetstatus.qtpl:380 qw422016.N().S(`<button type="button" class="btn btn-primary btn-sm me-1"onclick="document.getElementById('scrape-job-`) //line lib/promscrape/targetstatus.qtpl:382 qw422016.N().D(num) //line lib/promscrape/targetstatus.qtpl:382 qw422016.N().S(`').style.display='none'">collapse</button><button type="button" class="btn btn-secondary btn-sm me-1"onclick="document.getElementById('scrape-job-`) //line lib/promscrape/targetstatus.qtpl:386 qw422016.N().D(num) //line lib/promscrape/targetstatus.qtpl:386 qw422016.N().S(`').style.display='block'">expand</button>`) //line lib/promscrape/targetstatus.qtpl:389 } //line lib/promscrape/targetstatus.qtpl:389 func writeshowHideScrapeJobButtons(qq422016 qtio422016.Writer, num int) { //line lib/promscrape/targetstatus.qtpl:389 qw422016 := qt422016.AcquireWriter(qq422016) //line lib/promscrape/targetstatus.qtpl:389 streamshowHideScrapeJobButtons(qw422016, num) //line lib/promscrape/targetstatus.qtpl:389 qt422016.ReleaseWriter(qw422016) //line lib/promscrape/targetstatus.qtpl:389 } //line lib/promscrape/targetstatus.qtpl:389 func showHideScrapeJobButtons(num int) string { //line lib/promscrape/targetstatus.qtpl:389 qb422016 := qt422016.AcquireByteBuffer() //line lib/promscrape/targetstatus.qtpl:389 writeshowHideScrapeJobButtons(qb422016, num) //line lib/promscrape/targetstatus.qtpl:389 qs422016 := string(qb422016.B) //line lib/promscrape/targetstatus.qtpl:389 qt422016.ReleaseByteBuffer(qb422016) //line lib/promscrape/targetstatus.qtpl:389 return qs422016 //line lib/promscrape/targetstatus.qtpl:389 } //line lib/promscrape/targetstatus.qtpl:391 func streamqueryArgs(qw422016 *qt422016.Writer, filter *requestFilter, override map[string]string) { //line lib/promscrape/targetstatus.qtpl:393 showOnlyUnhealthy := "false" if filter.showOnlyUnhealthy { showOnlyUnhealthy = "true" } m := map[string]string{ "show_only_unhealthy": showOnlyUnhealthy, "endpoint_search": filter.endpointSearch, "label_search": filter.labelSearch, } for k, v := range override { m[k] = v } qa := make(url.Values, len(m)) for k, v := range m { qa[k] = []string{v} } //line lib/promscrape/targetstatus.qtpl:410 qw422016.E().S(qa.Encode()) //line lib/promscrape/targetstatus.qtpl:411 } //line lib/promscrape/targetstatus.qtpl:411 func writequeryArgs(qq422016 qtio422016.Writer, filter *requestFilter, override map[string]string) { //line lib/promscrape/targetstatus.qtpl:411 qw422016 := qt422016.AcquireWriter(qq422016) //line lib/promscrape/targetstatus.qtpl:411 streamqueryArgs(qw422016, filter, override) //line lib/promscrape/targetstatus.qtpl:411 qt422016.ReleaseWriter(qw422016) //line lib/promscrape/targetstatus.qtpl:411 } //line lib/promscrape/targetstatus.qtpl:411 func queryArgs(filter *requestFilter, override map[string]string) string { //line lib/promscrape/targetstatus.qtpl:411 qb422016 := qt422016.AcquireByteBuffer() //line lib/promscrape/targetstatus.qtpl:411 writequeryArgs(qb422016, filter, override) //line lib/promscrape/targetstatus.qtpl:411 qs422016 := string(qb422016.B) //line lib/promscrape/targetstatus.qtpl:411 qt422016.ReleaseByteBuffer(qb422016) //line lib/promscrape/targetstatus.qtpl:411 return qs422016 //line lib/promscrape/targetstatus.qtpl:411 } //line lib/promscrape/targetstatus.qtpl:413 func streamformatLabels(qw422016 *qt422016.Writer, labels *promutils.Labels) { //line lib/promscrape/targetstatus.qtpl:414 labelsList := labels.GetLabels() //line lib/promscrape/targetstatus.qtpl:414 qw422016.N().S(`{`) //line lib/promscrape/targetstatus.qtpl:416 for i, label := range labelsList { //line lib/promscrape/targetstatus.qtpl:417 qw422016.E().S(label.Name) //line lib/promscrape/targetstatus.qtpl:417 qw422016.N().S(`=`) //line lib/promscrape/targetstatus.qtpl:417 qw422016.E().Q(label.Value) //line lib/promscrape/targetstatus.qtpl:418 if i+1 < len(labelsList) { //line lib/promscrape/targetstatus.qtpl:418 qw422016.N().S(`,`) //line lib/promscrape/targetstatus.qtpl:418 qw422016.N().S(` `) //line lib/promscrape/targetstatus.qtpl:418 } //line lib/promscrape/targetstatus.qtpl:419 } //line lib/promscrape/targetstatus.qtpl:419 qw422016.N().S(`}`) //line lib/promscrape/targetstatus.qtpl:421 } //line lib/promscrape/targetstatus.qtpl:421 func writeformatLabels(qq422016 qtio422016.Writer, labels *promutils.Labels) { //line lib/promscrape/targetstatus.qtpl:421 qw422016 := qt422016.AcquireWriter(qq422016) //line lib/promscrape/targetstatus.qtpl:421 streamformatLabels(qw422016, labels) //line lib/promscrape/targetstatus.qtpl:421 qt422016.ReleaseWriter(qw422016) //line lib/promscrape/targetstatus.qtpl:421 } //line lib/promscrape/targetstatus.qtpl:421 func formatLabels(labels *promutils.Labels) string { //line lib/promscrape/targetstatus.qtpl:421 qb422016 := qt422016.AcquireByteBuffer() //line lib/promscrape/targetstatus.qtpl:421 writeformatLabels(qb422016, labels) //line lib/promscrape/targetstatus.qtpl:421 qs422016 := string(qb422016.B) //line lib/promscrape/targetstatus.qtpl:421 qt422016.ReleaseByteBuffer(qb422016) //line lib/promscrape/targetstatus.qtpl:421 return qs422016 //line lib/promscrape/targetstatus.qtpl:421 }