jetstack / jetstack/version-checker

[FEATURE] Expose application name as a label in Prometheus metrics

Offen
#448 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
enhancement
Vorherrschende Sprache
Go
Sterne
778
Forks
82
Ø Merge
2 Min.
Gemergte PRs (30 T.)
3

Beschreibung

**Is your feature request related to a problem? Please describe.**
I'm always frustrated when I look at the version-checker Grafana dashboard and see an outdated image (for example, `bitnami/redis`), but I can't immediately tell which specific third-party application or internal service is using it. In clusters with many deployments, I have to manually cross-reference the namespace or pod name to figure out which application owns the image before I can take action.

**Describe the solution you'd like**
I would like `version-checker` to natively expose the application name as a label in its generated Prometheus metrics.

Ideally, the controller could extract this from a dedicated annotation like `version-checker.io/app-name`, or fallback to standard Kubernetes resource labels (such as `app.kubernetes.io/name` or `app`) on the pod/deployment. Mapping this to an `app_name` or `application` label in the exported metric would allow the official Grafana dashboards to easily display which specific application is associated with which image(s), significantly improving visibility.

**Describe alternatives you've considered**
My current alternative/workaround is manually adding custom annotations to my deployments alongside the standard version-checker configs, like this:

```
podAnnotations:
enable.version-checker.io/controller: "true"
version-checker.io/app-name: "Karpenter"
match-regex.version-checker.io/controller: ^v?\d+\.\d+\.\d+.*
```
While this allows me to attach the metadata to the pod, it still requires complex, expensive PromQL queries using `kube-state-metrics` (e.g., `kube_pod_annotations`) to join this custom annotation with the actual `version-checker` metrics in Grafana. This slows down dashboard load times and makes the PromQL very difficult to maintain.

**Additional context**
Add any other context or screenshots about the feature request here.

---

**Message from the maintainers**:

If you wish to see this enhancement implemented please add a 👍 reaction to this issue! We often sort issues this way to know what to prioritize.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Start by locating the code that generates version-checker Prometheus metrics and the code that reads Kubernetes pod or deployment metadata. Compare the dedicated version-checker.io/app-name annotation with app.kubernetes.io/name and app labels, then define the exported label behavior and verify that the resulting metrics support the intended Grafana dashboard use case.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
go, grafana, kubernetes, prometheus
Bereich
devops, observability
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Ruhig
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
45/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.