prometheus / prometheus/client_python
Avoid duplicated metric types using multiprocess
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
I'm using the library (v 0.9.0) with multiprocess and I'm getting duplicated metric types. Getting the prometheus metrics I got this:
HELP custom_metric_1 Multiprocess metric
TYPE custom_metric_1 gauge
custom_metric_1 {pid="203"} 1.0
custom_metric_1 {pid="203"} 6.0
...
HELP custom_metric_1 Multiprocess metric
TYPE custom_metric_1 gauge
custom_metric_1 0.0
My code:
path = os.environ.get("prometheus_multiproc_dir", "/tmp/prometheus")
registry = prometheus_client.CollectorRegistry()
prometheus_client.multiprocess.MultiProcessCollector(registry, path)
metric_1 = prometheus_client.Gauge("custom_metric_1", "", registry=registry)
Any idea for avoiding this duplication.
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne damit, die doppelten HELP-, TYPE- und Gauge-Samples mit dem bereitgestellten prometheus_client.CollectorRegistry-, MultiProcessCollector- und Gauge-Setup zu reproduzieren, und untersuche anschließend die Pfade der Multiprozess-Sammlung und Metrikregistrierung. Als abgeschlossen gilt die Aufgabe, wenn das gemeldete Setup keine doppelten Metriktypen mehr ausgibt und gleichzeitig die erwarteten Multiprozess-Samples erhalten bleiben.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- prometheus, python
- Bereich
- observability
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 35/100