kube-state-metrics/internal/store
Damien Grisonnet 229befd41d *: add webhooks client config service metrics
In order to better identify, prioritize, and debug webhook latency
issues it is important to have a metric that would point to the resource
it is responsible for.  However, it is not possible to have that
dimension in the metrics exposed by Kubernetes because of the unbound
cardinality that such a label would have.

The name of the webhook could be an alternative since it usually
contains some information about the resource that the webhook targets,
however this is not very practical to use in multi-tenants
environments.

A solution for these kind of platform is to tie a specific webhook to a
namespace in order to be able to know which tenant manages it and take
actions depending on that. This is achieveable by leveraging the client
config information of webhooks configured via WebhookConfiguration
resources since Services are namespaced objects.

With these new metrics, users will be able to split the alerting
severity of webhook latency / rejection rate per namespace on top of
being able to do it based on the webhook name. This is key in
environment where administrators don't have control over the webhooks
installed by the various tenants.

Signed-off-by: Damien Grisonnet <dgrisonn@redhat.com>
2023-07-04 18:20:34 +02:00
..
builder.go Add support for variable VKs in CRS config 2023-05-20 01:26:02 +05:30
builder_test.go Support filtering label allowlist by "*" 2022-11-07 23:59:36 +05:30
certificatesigningrequest.go Migrate all NewFamilyGenerator to NewFamilyGeneratorWithStability 2023-02-05 22:02:47 -05:00
certificatesigningrequest_test.go Add all stable metrics 2022-10-14 08:25:39 -04:00
clusterrole.go Migrate all NewFamilyGenerator to NewFamilyGeneratorWithStability 2023-02-05 22:02:47 -05:00
clusterrole_test.go add role and cluster role 2022-06-30 20:55:25 +09:00
clusterrolebinding.go Migrate all NewFamilyGenerator to NewFamilyGeneratorWithStability 2023-02-05 22:02:47 -05:00
clusterrolebinding_test.go add rolebinding metrics 2022-08-07 01:32:57 +09:00
configmap.go Migrate all NewFamilyGenerator to NewFamilyGeneratorWithStability 2023-02-05 22:02:47 -05:00
configmap_test.go Add all stable metrics 2022-10-14 08:25:39 -04:00
cronjob.go Migrate all NewFamilyGenerator to NewFamilyGeneratorWithStability 2023-02-05 22:02:47 -05:00
cronjob_test.go Add all stable metrics 2022-10-14 08:25:39 -04:00
daemonset.go Migrate all NewFamilyGenerator to NewFamilyGeneratorWithStability 2023-02-05 22:02:47 -05:00
daemonset_test.go Add all stable metrics 2022-10-14 08:25:39 -04:00
deployment.go Migrate all NewFamilyGenerator to NewFamilyGeneratorWithStability 2023-02-05 22:02:47 -05:00
deployment_test.go Add all stable metrics 2022-10-14 08:25:39 -04:00
endpoint.go Migrate all NewFamilyGenerator to NewFamilyGeneratorWithStability 2023-02-05 22:02:47 -05:00
endpoint_test.go Add all stable metrics 2022-10-14 08:25:39 -04:00
endpointslice.go Add Metrics for EndpointSlices 2022-11-26 01:44:29 +01:00
endpointslice_test.go Add Metrics for EndpointSlices 2022-11-26 01:44:29 +01:00
horizontalpodautoscaler.go Fix cyclo complexity in horizontalpodautoscaler file function is hpaMetricFamilies 2023-06-01 18:57:24 +05:30
horizontalpodautoscaler_test.go autoscaling/v2beta2 HorizontalPodAutoscaler is deprecated in v1.23+ 2022-11-24 11:30:20 +00:00
ingress.go Migrate all NewFamilyGenerator to NewFamilyGeneratorWithStability 2023-02-05 22:02:47 -05:00
ingress_test.go Add all stable metrics 2022-10-14 08:25:39 -04:00
ingressclass.go fix linter error 2022-11-24 22:50:39 +09:00
ingressclass_test.go add ingress class metrics 2022-11-23 23:16:36 +09:00
job.go Map exact value provided but update value to match the correct casing 2023-04-14 09:47:58 -07:00
job_test.go Map exact value provided but update value to match the correct casing 2023-04-14 09:47:58 -07:00
lease.go Add namespace label to `kube_lease_renew_time` 2023-05-19 22:02:54 -05:00
lease_test.go Add namespace label to `kube_lease_renew_time` 2023-05-19 22:02:54 -05:00
limitrange.go Add all stable metrics 2022-10-14 08:25:39 -04:00
limitrange_test.go Add all stable metrics 2022-10-14 08:25:39 -04:00
mutatingwebhookconfiguration.go *: add webhooks client config service metrics 2023-07-04 18:20:34 +02:00
mutatingwebhookconfiguration_test.go *: add webhooks client config service metrics 2023-07-04 18:20:34 +02:00
namespace.go Migrate all NewFamilyGenerator to NewFamilyGeneratorWithStability 2023-02-05 22:02:47 -05:00
namespace_test.go Add all stable metrics 2022-10-14 08:25:39 -04:00
networkpolicy.go Migrate all NewFamilyGenerator to NewFamilyGeneratorWithStability 2023-02-05 22:02:47 -05:00
networkpolicy_test.go Add kube_*_annotations metrics 2021-04-29 16:04:16 +02:00
node.go Adhere to OTel-Prometheus standard for labels 2023-04-22 19:45:48 +05:30
node_test.go Add all stable metrics 2022-10-14 08:25:39 -04:00
persistentvolume.go Migrate all NewFamilyGenerator to NewFamilyGeneratorWithStability 2023-02-05 22:02:47 -05:00
persistentvolume_test.go Add all stable metrics 2022-10-14 08:25:39 -04:00
persistentvolumeclaim.go Migrate all NewFamilyGenerator to NewFamilyGeneratorWithStability 2023-02-05 22:02:47 -05:00
persistentvolumeclaim_test.go Replace special string "<none>" with empty string for "storageclass" dimension. 2022-12-03 15:20:08 +01:00
pod.go Adhere to OTel-Prometheus standard for labels 2023-04-22 19:45:48 +05:30
pod_test.go Fixing emitting of ready time metrics when condition is false 2023-01-31 13:29:26 -08:00
poddisruptionbudget.go Migrate all NewFamilyGenerator to NewFamilyGeneratorWithStability 2023-02-05 22:02:47 -05:00
poddisruptionbudget_test.go Add all stable metrics 2022-10-14 08:25:39 -04:00
replicaset.go Migrate all NewFamilyGenerator to NewFamilyGeneratorWithStability 2023-02-05 22:02:47 -05:00
replicaset_test.go Replace "<none>" with empty string for "owner_kind", "owner_name" and "owner_is_controller" dimensions. 2022-12-03 15:17:02 +01:00
replicationcontroller.go Migrate all NewFamilyGenerator to NewFamilyGeneratorWithStability 2023-02-05 22:02:47 -05:00
replicationcontroller_test.go Replace "<none>" with empty string for "owner_kind", "owner_name" and "owner_is_controller" dimensions. 2022-12-03 15:17:02 +01:00
resourcequota.go Add all stable metrics 2022-10-14 08:25:39 -04:00
resourcequota_test.go Add all stable metrics 2022-10-14 08:25:39 -04:00
role.go Migrate all NewFamilyGenerator to NewFamilyGeneratorWithStability 2023-02-05 22:02:47 -05:00
role_test.go add role and cluster role 2022-06-30 20:55:25 +09:00
rolebinding.go Migrate all NewFamilyGenerator to NewFamilyGeneratorWithStability 2023-02-05 22:02:47 -05:00
rolebinding_test.go add rolebinding metrics 2022-08-07 01:32:57 +09:00
secret.go Migrate all NewFamilyGenerator to NewFamilyGeneratorWithStability 2023-02-05 22:02:47 -05:00
secret_test.go Add all stable metrics 2022-10-14 08:25:39 -04:00
service.go Migrate all NewFamilyGenerator to NewFamilyGeneratorWithStability 2023-02-05 22:02:47 -05:00
service_test.go Add all stable metrics 2022-10-14 08:25:39 -04:00
serviceaccount.go Migrate all NewFamilyGenerator to NewFamilyGeneratorWithStability 2023-02-05 22:02:47 -05:00
serviceaccount_test.go Add support for the ServiceAccount resource (Ref: #1717) 2022-06-29 23:58:01 +02:00
statefulset.go Add gauge implementation of kube_statefulset_ordinals_start 2023-03-13 12:11:51 -07:00
statefulset_test.go Fix indentation formatting for test WANT stanza in statefulset_test.go 2023-03-13 12:11:51 -07:00
storageclass.go Migrate all NewFamilyGenerator to NewFamilyGeneratorWithStability 2023-02-05 22:02:47 -05:00
storageclass_test.go Add all stable metrics 2022-10-14 08:25:39 -04:00
testutils.go Replace pkg/errors with stdlib errors 2022-08-15 20:25:09 +02:00
testutils_test.go Makefile,internal/collector: Rename collector -> store 2019-06-11 16:18:53 +02:00
utils.go Adhere to OTel-Prometheus standard for labels 2023-04-22 19:45:48 +05:30
utils_test.go Lint 2022-02-10 04:26:47 +02:00
validatingwebhookconfiguration.go *: add webhooks client config service metrics 2023-07-04 18:20:34 +02:00
validatingwebhookconfiguration_test.go *: add webhooks client config service metrics 2023-07-04 18:20:34 +02:00
volumeattachment.go Migrate all NewFamilyGenerator to NewFamilyGeneratorWithStability 2023-02-05 22:02:47 -05:00
volumeattachment_test.go Update go module path to k8s.io/kube-state-metrics/v2 2020-09-21 10:58:08 +02:00