MCPcopy
hub / github.com/prometheus/client_golang / testWriteHistogram

Function testWriteHistogram

prometheus/graphite/bridge_test.go:169–244  ·  view source on GitHub ↗
(t *testing.T, useTags bool)

Source from the content-addressed store, hash-verified

167}
168
169func testWriteHistogram(t *testing.T, useTags bool) {
170 histVec := prometheus.NewHistogramVec(
171 prometheus.HistogramOpts{
172 Name: "name",
173 Help: "docstring",
174 ConstLabels: prometheus.Labels{"constname": "constvalue"},
175 Buckets: []float64{0.01, 0.02, 0.05, 0.1},
176 },
177 []string{"labelname"},
178 )
179
180 histVec.WithLabelValues("val1").Observe(float64(10))
181 histVec.WithLabelValues("val1").Observe(float64(20))
182 histVec.WithLabelValues("val1").Observe(float64(30))
183 histVec.WithLabelValues("val2").Observe(float64(20))
184 histVec.WithLabelValues("val2").Observe(float64(30))
185 histVec.WithLabelValues("val2").Observe(float64(40))
186
187 reg := prometheus.NewRegistry()
188 reg.MustRegister(histVec)
189
190 mfs, err := reg.Gather()
191 if err != nil {
192 t.Fatalf("error: %v", err)
193 }
194
195 now := model.Time(1477043083)
196 var buf bytes.Buffer
197 err = writeMetrics(&buf, mfs, useTags, "prefix", now)
198 if err != nil {
199 t.Fatalf("error: %v", err)
200 }
201
202 var (
203 want = `prefix.name_bucket.constname.constvalue.labelname.val1.le.0_01 0 1477043
204prefix.name_bucket.constname.constvalue.labelname.val1.le.0_02 0 1477043
205prefix.name_bucket.constname.constvalue.labelname.val1.le.0_05 0 1477043
206prefix.name_bucket.constname.constvalue.labelname.val1.le.0_1 0 1477043
207prefix.name_sum.constname.constvalue.labelname.val1 60 1477043
208prefix.name_count.constname.constvalue.labelname.val1 3 1477043
209prefix.name_bucket.constname.constvalue.labelname.val1.le._Inf 3 1477043
210prefix.name_bucket.constname.constvalue.labelname.val2.le.0_01 0 1477043
211prefix.name_bucket.constname.constvalue.labelname.val2.le.0_02 0 1477043
212prefix.name_bucket.constname.constvalue.labelname.val2.le.0_05 0 1477043
213prefix.name_bucket.constname.constvalue.labelname.val2.le.0_1 0 1477043
214prefix.name_sum.constname.constvalue.labelname.val2 90 1477043
215prefix.name_count.constname.constvalue.labelname.val2 3 1477043
216prefix.name_bucket.constname.constvalue.labelname.val2.le._Inf 3 1477043
217`
218 wantTagged = `prefix.name_bucket;constname=constvalue;labelname=val1;le=0.01 0 1477043
219prefix.name_bucket;constname=constvalue;labelname=val1;le=0.02 0 1477043
220prefix.name_bucket;constname=constvalue;labelname=val1;le=0.05 0 1477043
221prefix.name_bucket;constname=constvalue;labelname=val1;le=0.1 0 1477043
222prefix.name_sum;constname=constvalue;labelname=val1 60 1477043
223prefix.name_count;constname=constvalue;labelname=val1 3 1477043
224prefix.name_bucket;constname=constvalue;labelname=val1;le=+Inf 3 1477043
225prefix.name_bucket;constname=constvalue;labelname=val2;le=0.01 0 1477043
226prefix.name_bucket;constname=constvalue;labelname=val2;le=0.02 0 1477043

Callers 1

TestWriteHistogramFunction · 0.85

Calls 10

WithLabelValuesMethod · 0.95
MustRegisterMethod · 0.95
GatherMethod · 0.95
NewHistogramVecFunction · 0.92
NewRegistryFunction · 0.92
writeMetricsFunction · 0.85
checkLinesAreEqualFunction · 0.85
ObserveMethod · 0.65
StringMethod · 0.45
ErrorMethod · 0.45

Tested by

no test coverage detected