func secretMetricFamilies()

in internal/store/secret.go [41:145]


func secretMetricFamilies(allowAnnotationsList, allowLabelsList []string) []generator.FamilyGenerator {
	return []generator.FamilyGenerator{
		*generator.NewFamilyGenerator(
			"kube_secret_info",
			"Information about secret.",
			metric.Gauge,
			"",
			wrapSecretFunc(func(s *v1.Secret) *metric.Family {
				return &metric.Family{
					Metrics: []*metric.Metric{
						{
							Value: 1,
						},
					},
				}
			}),
		),
		*generator.NewFamilyGenerator(
			"kube_secret_type",
			"Type about secret.",
			metric.Gauge,
			"",
			wrapSecretFunc(func(s *v1.Secret) *metric.Family {
				return &metric.Family{
					Metrics: []*metric.Metric{
						{
							LabelKeys:   []string{"type"},
							LabelValues: []string{string(s.Type)},
							Value:       1,
						},
					},
				}
			}),
		),
		*generator.NewFamilyGenerator(
			descSecretAnnotationsName,
			descSecretAnnotationsHelp,
			metric.Gauge,
			"",
			wrapSecretFunc(func(s *v1.Secret) *metric.Family {
				annotationKeys, annotationValues := createPrometheusLabelKeysValues("annotation", s.Annotations, allowAnnotationsList)
				return &metric.Family{
					Metrics: []*metric.Metric{
						{
							LabelKeys:   annotationKeys,
							LabelValues: annotationValues,
							Value:       1,
						},
					},
				}

			}),
		),
		*generator.NewFamilyGenerator(
			descSecretLabelsName,
			descSecretLabelsHelp,
			metric.Gauge,
			"",
			wrapSecretFunc(func(s *v1.Secret) *metric.Family {
				labelKeys, labelValues := createPrometheusLabelKeysValues("label", s.Labels, allowLabelsList)
				return &metric.Family{
					Metrics: []*metric.Metric{
						{
							LabelKeys:   labelKeys,
							LabelValues: labelValues,
							Value:       1,
						},
					},
				}

			}),
		),
		*generator.NewFamilyGenerator(
			"kube_secret_created",
			"Unix creation timestamp",
			metric.Gauge,
			"",
			wrapSecretFunc(func(s *v1.Secret) *metric.Family {
				ms := []*metric.Metric{}

				if !s.CreationTimestamp.IsZero() {
					ms = append(ms, &metric.Metric{
						Value: float64(s.CreationTimestamp.Unix()),
					})
				}

				return &metric.Family{
					Metrics: ms,
				}
			}),
		),
		*generator.NewFamilyGenerator(
			"kube_secret_metadata_resource_version",
			"Resource version representing a specific version of secret.",
			metric.Gauge,
			"",
			wrapSecretFunc(func(s *v1.Secret) *metric.Family {
				return &metric.Family{
					Metrics: resourceVersionMetric(s.ObjectMeta.ResourceVersion),
				}
			}),
		),
	}

}