Codebase list golang-github-go-kit-kit / upstream/0.6.0 metrics / internal / lv / labelvalues.go
upstream/0.6.0

Tree @upstream/0.6.0 (Download .tar.gz)

labelvalues.go @upstream/0.6.0raw · history · blame

package lv

// LabelValues is a type alias that provides validation on its With method.
// Metrics may include it as a member to help them satisfy With semantics and
// save some code duplication.
type LabelValues []string

// With validates the input, and returns a new aggregate labelValues.
func (lvs LabelValues) With(labelValues ...string) LabelValues {
	if len(labelValues)%2 != 0 {
		labelValues = append(labelValues, "unknown")
	}
	return append(lvs, labelValues...)
}