Compare commits
5 Commits
1dd0561e91
...
1321e11795
Author | SHA1 | Date |
---|---|---|
Lukas Vogel | 1321e11795 | |
Ivan Goncharov | 76b74e25d5 | |
Kemal Akkoyun | 6a9004890f | |
Kemal Akkoyun | 7d0a0fbb72 | |
Lukas Vogel | e7ef5df93d |
|
@ -0,0 +1 @@
|
||||||
|
* @ArthurSens @bwplotka @kakkoyun @vesari
|
|
@ -382,6 +382,7 @@ func TestHistogramAtomicObserve(t *testing.T) {
|
||||||
return
|
return
|
||||||
default:
|
default:
|
||||||
his.Observe(1)
|
his.Observe(1)
|
||||||
|
time.Sleep(time.Nanosecond)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,7 +25,7 @@ import (
|
||||||
|
|
||||||
// notImplementedErr is returned by stub functions that replace cgo functions, when cgo
|
// notImplementedErr is returned by stub functions that replace cgo functions, when cgo
|
||||||
// isn't available.
|
// isn't available.
|
||||||
var notImplementedErr = fmt.Errorf("not implemented")
|
var notImplementedErr = errors.New("not implemented")
|
||||||
|
|
||||||
type memoryInfo struct {
|
type memoryInfo struct {
|
||||||
vsize uint64 // Virtual memory size in bytes
|
vsize uint64 // Virtual memory size in bytes
|
||||||
|
|
|
@ -634,54 +634,7 @@ func processMetric(
|
||||||
return fmt.Errorf("error collecting metric %v: %w", desc, err)
|
return fmt.Errorf("error collecting metric %v: %w", desc, err)
|
||||||
}
|
}
|
||||||
metricFamily, ok := metricFamiliesByName[desc.fqName]
|
metricFamily, ok := metricFamiliesByName[desc.fqName]
|
||||||
if ok { // Existing name.
|
if !ok { // New name.
|
||||||
if metricFamily.GetHelp() != desc.help {
|
|
||||||
return fmt.Errorf(
|
|
||||||
"collected metric %s %s has help %q but should have %q",
|
|
||||||
desc.fqName, dtoMetric, desc.help, metricFamily.GetHelp(),
|
|
||||||
)
|
|
||||||
}
|
|
||||||
// TODO(beorn7): Simplify switch once Desc has type.
|
|
||||||
switch metricFamily.GetType() {
|
|
||||||
case dto.MetricType_COUNTER:
|
|
||||||
if dtoMetric.Counter == nil {
|
|
||||||
return fmt.Errorf(
|
|
||||||
"collected metric %s %s should be a Counter",
|
|
||||||
desc.fqName, dtoMetric,
|
|
||||||
)
|
|
||||||
}
|
|
||||||
case dto.MetricType_GAUGE:
|
|
||||||
if dtoMetric.Gauge == nil {
|
|
||||||
return fmt.Errorf(
|
|
||||||
"collected metric %s %s should be a Gauge",
|
|
||||||
desc.fqName, dtoMetric,
|
|
||||||
)
|
|
||||||
}
|
|
||||||
case dto.MetricType_SUMMARY:
|
|
||||||
if dtoMetric.Summary == nil {
|
|
||||||
return fmt.Errorf(
|
|
||||||
"collected metric %s %s should be a Summary",
|
|
||||||
desc.fqName, dtoMetric,
|
|
||||||
)
|
|
||||||
}
|
|
||||||
case dto.MetricType_UNTYPED:
|
|
||||||
if dtoMetric.Untyped == nil {
|
|
||||||
return fmt.Errorf(
|
|
||||||
"collected metric %s %s should be Untyped",
|
|
||||||
desc.fqName, dtoMetric,
|
|
||||||
)
|
|
||||||
}
|
|
||||||
case dto.MetricType_HISTOGRAM:
|
|
||||||
if dtoMetric.Histogram == nil {
|
|
||||||
return fmt.Errorf(
|
|
||||||
"collected metric %s %s should be a Histogram",
|
|
||||||
desc.fqName, dtoMetric,
|
|
||||||
)
|
|
||||||
}
|
|
||||||
default:
|
|
||||||
panic("encountered MetricFamily with invalid type")
|
|
||||||
}
|
|
||||||
} else { // New name.
|
|
||||||
metricFamily = &dto.MetricFamily{}
|
metricFamily = &dto.MetricFamily{}
|
||||||
metricFamily.Name = proto.String(desc.fqName)
|
metricFamily.Name = proto.String(desc.fqName)
|
||||||
metricFamily.Help = proto.String(desc.help)
|
metricFamily.Help = proto.String(desc.help)
|
||||||
|
|
Loading…
Reference in New Issue