// Code generated by qtc from "query_response.qtpl". DO NOT EDIT. // See https://github.com/valyala/quicktemplate for details. //line app/vmselect/prometheus/query_response.qtpl:1 package prometheus //line app/vmselect/prometheus/query_response.qtpl:1 import ( "github.com/VictoriaMetrics/VictoriaMetrics/app/vmselect/netstorage" "github.com/VictoriaMetrics/VictoriaMetrics/lib/querytracer" ) // QueryResponse generates response for /api/v1/query.See https://prometheus.io/docs/prometheus/latest/querying/api/#instant-queries //line app/vmselect/prometheus/query_response.qtpl:9 import ( qtio422016 "io" qt422016 "github.com/valyala/quicktemplate" ) //line app/vmselect/prometheus/query_response.qtpl:9 var ( _ = qtio422016.Copy _ = qt422016.AcquireByteBuffer ) //line app/vmselect/prometheus/query_response.qtpl:9 func StreamQueryResponse(qw422016 *qt422016.Writer, isPartial bool, rs []netstorage.Result, qt *querytracer.Tracer, qtDone func()) { //line app/vmselect/prometheus/query_response.qtpl:9 qw422016.N().S(`{`) //line app/vmselect/prometheus/query_response.qtpl:11 seriesCount := len(rs) //line app/vmselect/prometheus/query_response.qtpl:11 qw422016.N().S(`"status":"success","isPartial":`) //line app/vmselect/prometheus/query_response.qtpl:13 if isPartial { //line app/vmselect/prometheus/query_response.qtpl:13 qw422016.N().S(`true`) //line app/vmselect/prometheus/query_response.qtpl:13 } else { //line app/vmselect/prometheus/query_response.qtpl:13 qw422016.N().S(`false`) //line app/vmselect/prometheus/query_response.qtpl:13 } //line app/vmselect/prometheus/query_response.qtpl:13 qw422016.N().S(`,"data":{"resultType":"vector","result":[`) //line app/vmselect/prometheus/query_response.qtpl:17 if len(rs) > 0 { //line app/vmselect/prometheus/query_response.qtpl:17 qw422016.N().S(`{"metric":`) //line app/vmselect/prometheus/query_response.qtpl:19 streammetricNameObject(qw422016, &rs[0].MetricName) //line app/vmselect/prometheus/query_response.qtpl:19 qw422016.N().S(`,"value":`) //line app/vmselect/prometheus/query_response.qtpl:20 streammetricRow(qw422016, rs[0].Timestamps[0], rs[0].Values[0]) //line app/vmselect/prometheus/query_response.qtpl:20 qw422016.N().S(`}`) //line app/vmselect/prometheus/query_response.qtpl:22 rs = rs[1:] //line app/vmselect/prometheus/query_response.qtpl:23 for i := range rs { //line app/vmselect/prometheus/query_response.qtpl:24 r := &rs[i] //line app/vmselect/prometheus/query_response.qtpl:24 qw422016.N().S(`,{"metric":`) //line app/vmselect/prometheus/query_response.qtpl:26 streammetricNameObject(qw422016, &r.MetricName) //line app/vmselect/prometheus/query_response.qtpl:26 qw422016.N().S(`,"value":`) //line app/vmselect/prometheus/query_response.qtpl:27 streammetricRow(qw422016, r.Timestamps[0], r.Values[0]) //line app/vmselect/prometheus/query_response.qtpl:27 qw422016.N().S(`}`) //line app/vmselect/prometheus/query_response.qtpl:29 } //line app/vmselect/prometheus/query_response.qtpl:30 } //line app/vmselect/prometheus/query_response.qtpl:30 qw422016.N().S(`]}`) //line app/vmselect/prometheus/query_response.qtpl:34 qt.Printf("generate /api/v1/query response for series=%d", seriesCount) qtDone() //line app/vmselect/prometheus/query_response.qtpl:37 streamdumpQueryTrace(qw422016, qt) //line app/vmselect/prometheus/query_response.qtpl:37 qw422016.N().S(`}`) //line app/vmselect/prometheus/query_response.qtpl:39 } //line app/vmselect/prometheus/query_response.qtpl:39 func WriteQueryResponse(qq422016 qtio422016.Writer, isPartial bool, rs []netstorage.Result, qt *querytracer.Tracer, qtDone func()) { //line app/vmselect/prometheus/query_response.qtpl:39 qw422016 := qt422016.AcquireWriter(qq422016) //line app/vmselect/prometheus/query_response.qtpl:39 StreamQueryResponse(qw422016, isPartial, rs, qt, qtDone) //line app/vmselect/prometheus/query_response.qtpl:39 qt422016.ReleaseWriter(qw422016) //line app/vmselect/prometheus/query_response.qtpl:39 } //line app/vmselect/prometheus/query_response.qtpl:39 func QueryResponse(isPartial bool, rs []netstorage.Result, qt *querytracer.Tracer, qtDone func()) string { //line app/vmselect/prometheus/query_response.qtpl:39 qb422016 := qt422016.AcquireByteBuffer() //line app/vmselect/prometheus/query_response.qtpl:39 WriteQueryResponse(qb422016, isPartial, rs, qt, qtDone) //line app/vmselect/prometheus/query_response.qtpl:39 qs422016 := string(qb422016.B) //line app/vmselect/prometheus/query_response.qtpl:39 qt422016.ReleaseByteBuffer(qb422016) //line app/vmselect/prometheus/query_response.qtpl:39 return qs422016 //line app/vmselect/prometheus/query_response.qtpl:39 }