Skip to content

Commit 9f15cc1

Browse files
committed
pods: Expose empty labels
1 parent 63749c5 commit 9f15cc1

File tree

2 files changed

+12
-26
lines changed

2 files changed

+12
-26
lines changed

internal/store/pod.go

Lines changed: 8 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1653,41 +1653,26 @@ func createPodTolerationsFamilyGenerator() generator.FamilyGenerator {
16531653
var ms []*metric.Metric
16541654

16551655
for _, t := range p.Spec.Tolerations {
1656-
var labelKeys []string
1657-
var labelValues []string
1658-
1659-
if t.Key != "" {
1660-
labelKeys = append(labelKeys, "key")
1661-
labelValues = append(labelValues, t.Key)
1662-
}
1656+
var key, operator, value, effect, tolerationSeconds string
16631657

1658+
key = t.Key
16641659
if t.Operator != "" {
1665-
labelKeys = append(labelKeys, "operator")
1666-
labelValues = append(labelValues, string(t.Operator))
1660+
operator = string(t.Operator)
16671661
}
16681662

1669-
if t.Value != "" {
1670-
labelKeys = append(labelKeys, "value")
1671-
labelValues = append(labelValues, t.Value)
1672-
}
1663+
value = t.Value
16731664

16741665
if t.Effect != "" {
1675-
labelKeys = append(labelKeys, "effect")
1676-
labelValues = append(labelValues, string(t.Effect))
1666+
effect = string(t.Effect)
16771667
}
16781668

16791669
if t.TolerationSeconds != nil {
1680-
labelKeys = append(labelKeys, "toleration_seconds")
1681-
labelValues = append(labelValues, strconv.FormatInt(*t.TolerationSeconds, 10))
1682-
}
1683-
1684-
if len(labelKeys) == 0 {
1685-
continue
1670+
tolerationSeconds = strconv.FormatInt(*t.TolerationSeconds, 10)
16861671
}
16871672

16881673
ms = append(ms, &metric.Metric{
1689-
LabelKeys: labelKeys,
1690-
LabelValues: labelValues,
1674+
LabelKeys: []string{"key", "operator", "value", "effect", "toleration_seconds"},
1675+
LabelValues: []string{key, operator, value, effect, tolerationSeconds},
16911676
Value: 1,
16921677
})
16931678
}

internal/store/pod_test.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2123,9 +2123,10 @@ func TestPodStore(t *testing.T) {
21232123
Want: `
21242124
# HELP kube_pod_tolerations Information about the pod tolerations
21252125
# TYPE kube_pod_tolerations gauge
2126-
kube_pod_tolerations{namespace="ns1",pod="pod1",uid="uid1",key="key1",operator="Equal",value="value1",effect="NoSchedule"} 1
2127-
kube_pod_tolerations{namespace="ns1",pod="pod1",uid="uid1",key="key2",operator="Exists"} 1
2128-
kube_pod_tolerations{namespace="ns1",pod="pod1",uid="uid1",key="key3",operator="Equal",value="value3"} 1
2126+
kube_pod_tolerations{effect="",key="",namespace="ns1",operator="",pod="pod1",toleration_seconds="",uid="uid1",value=""} 1
2127+
kube_pod_tolerations{effect="",key="key2",namespace="ns1",operator="Exists",pod="pod1",toleration_seconds="",uid="uid1",value=""} 1
2128+
kube_pod_tolerations{effect="",key="key3",namespace="ns1",operator="Equal",pod="pod1",toleration_seconds="",uid="uid1",value="value3"} 1
2129+
kube_pod_tolerations{effect="NoSchedule",key="key1",namespace="ns1",operator="Equal",pod="pod1",toleration_seconds="",uid="uid1",value="value1"} 1
21292130
`,
21302131
MetricNames: []string{
21312132
"kube_pod_tolerations",

0 commit comments

Comments
 (0)