prometheus / prometheus/client_python

Does GCCollector work in multiprocess mode?

Offen
#653 1 Kommentar 0 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

Hi all,

First of all sorry if the question is kinda stupid, I would not ask if the answer was evident somewhere to me, but I'm interested to find out does GC reporting works in multiprocess (gunicorn) mode of work. As when I have used this client in multiprocess mode with gunicorn I did not get any metrics about GC at all out of the box, I needed to write my own metric.

I took a look through old issues at this project and managed to find some related to this problem:

And I saw that implementation of GCCollector uses get_stats() from Python module, there is no custom callback in this code (lock is still there to manage files) so I'm somewhat confused does this work or not, because, it seems to me that this gc.get_stats can be used as any other metric where you would report GC metrics per PID (this is little too much of data but still) and just for example set gauge to some value when reporting.

AM I missing something here or?

Thank you :)

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

Beginne mit der Untersuchung der Implementierung von GCCollector und des Verhaltens von Python's gc.get_stats() im Multiprocess-Modus von gunicorn. Vergleiche die Ergebnisse mit dem zugehörigen Issue #322 und bestimme, ob GC metrics voraussichtlich funktionieren; dokumentiere das unterstützte Verhalten oder ermittle die konkret erforderliche Änderung.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
observability-sre
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

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