-
Notifications
You must be signed in to change notification settings - Fork 1.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Webhook metrics can have enormous cardinality #2872
Comments
@mattmoor AIUI webhook metrics are defined for us by knative/pkg infra. Is this something Knative has hit as well? Or is Tekton different due to its recommendation to use |
It certainly exacerbates it, but I think that's probably a poor choice of dimension in general since generally metrics systems frown upon the use of any dimension with unbounded cardinality. Want to raise in |
/kind question |
Rotten issues close after 30d of inactivity. /close Send feedback to tektoncd/plumbing. |
Stale issues rot after 30d of inactivity. /lifecycle rotten Send feedback to tektoncd/plumbing. |
@tekton-robot: Closing this issue. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
/remove-lifecycle rotten |
@vdemeester: Reopened this issue. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
knative/pkg#1464 is merged now so I guess it's a matter of waiting for a new release to be cut and then bumping the dep ... Not sure if this would count as a breaking change, since it's hypothetically possible that somebody is relying on the current behaviour even though they really really shouldn't? 🤔 |
The newest knative/pkg release has released some change to how metrics are generated. In particular, the new code stops generating a metrics for every resource that is reconciled. This dramatically reduces the metrics cardinality for the webhook/controller. This ultimately reduces amount of memory required by the controller/webhook daemons and greatly improves the usability of the /metrics endpoint as it will not longer return a metrics for every resource that is reconciled. fixes: tektoncd#2872
The newest knative/pkg release has released some change to how metrics are generated. In particular, the new code stops generating a metrics for every resource that is reconciled. This dramatically reduces the metrics cardinality for the webhook. This ultimately reduces amount of memory required by the webhook daemons and greatly improves the usability of the /metrics endpoint as it will not longer return a metrics for every resource that is reconciled. fixes: tektoncd#2872
The newest knative/pkg release has released some change to how metrics are generated. In particular, the new code stops generating a metrics for every resource that is reconciled. This dramatically reduces the metrics cardinality for the webhook. This ultimately reduces amount of memory required by the webhook daemons and greatly improves the usability of the /metrics endpoint as it will not longer return a metrics for every resource that is reconciled. fixes: tektoncd#2872
The newest knative/pkg release has released some change to how metrics are generated. In particular, the new code stops generating a metrics for every resource that is reconciled. This dramatically reduces the metrics cardinality for the webhook. This ultimately reduces amount of memory required by the webhook daemons and greatly improves the usability of the /metrics endpoint as it will not longer return a metrics for every resource that is reconciled. fixes: tektoncd#2872
The newest knative/pkg release has released some change to how metrics are generated. In particular, the new code stops generating a metrics for every resource that is reconciled. This dramatically reduces the metrics cardinality for the webhook. This ultimately reduces amount of memory required by the webhook daemons and greatly improves the usability of the /metrics endpoint as it will not longer return a metrics for every resource that is reconciled. fixes: #2872
The metrics exported by the tekton-pipelines-webhook service have a label for
resource_name
. This interacts poorly with thegenerateName
part of the k8s metadata API, since you will get a new time series for every interaction. This will cause well known problems with Prometheus, such as drastically degraded query performance and increased storage needs.Expected Behavior
A new time series should not be generated for every ephemeral Tekton resource created, updated etc.
Actual Behavior
A new time series is generated for every ephemeral Tekton resource created, updated etc.
Steps to Reproduce the Problem
spec.metadata.generateName
set.Additional Info
Kubernetes version:
Output of
kubectl version
:Tekton Pipeline version:
0.12.0
The text was updated successfully, but these errors were encountered: