prometheus / prometheus/client_python

Feature request - public `registry._names_to_collectors` access

Offen
#1,071 5 Kommentare 4 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
Python
Sterne
4.4k
Forks
876
Ø Merge
8 T. 4 Std.
Gemergte PRs (30 T.)
1

Beschreibung

Now we are working on Prometheus support in FastStream and faced with a problem. Shared registry between different middlewares leads to MetricsContainer duplication. So, we would like to have a public API to chech registry for already registered objects.

Can you please provide public access to this property some way?

https://github.com/prometheus/client_python/blob/master/prometheus_client/registry.py#L31

I think, the easiest way to save old API and provide us with a new one - add a public property like in the following snipper

class CollectorRegistry(Collector):
    def __init__(self):
        self._names_to_collectors: Dict[str, Collector] = {}

    @property
    def names_to_collectors(self):
        return self._names_to_collectors

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginnen Sie in prometheus_client/registry.py bei CollectorRegistry und seiner _names_to_collectors-Eigenschaft, wie im Issue verlinkt. Überprüfen Sie, wie die Registry verwendet wird, und ermitteln Sie die Kompatibilitätsauswirkungen eines öffentlichen Zugriffs. Als erledigt gilt die Bereitstellung einer unterstützten öffentlichen Möglichkeit, registrierte Objekte zu inspizieren, ohne das bestehende interne Attribut zu entfernen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
prometheus, python
Bereich
observability-sre
Issue-Typ
Feature
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
38/100

Neue Issues direkt in Ihr Postfach

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