prometheus / prometheus/client_python
Multiprocess application sometimes throwing UnicodeDecodeError in prometheus_client/mmap_dict.py
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
I have multiprocess enabled application with flask exporter, sometimes it is throwing below error
File "usr/local/lib/python3.8/site-packages/prometheus_client/mmap_dict.py", line 44, in _read_all_values
yield encoded_key.decode('utf-8'), value, pos
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xf0 in position 18: invalid continuation byte.
After this error my application is crashed. Can someone please help me on this?
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 in prometheus_client/mmap_dict.py bei _read_all_values und untersuche, wie Multiprocess-mmap-Daten zu encoded_key.decode('utf-8') gelangen. Reproduziere den Fehler mit einer Multiprocess-Anwendung unter Verwendung des Flask exporter und überprüfe anschließend, dass der daraus resultierende UnicodeDecodeError die Anwendung nicht mehr zum Absturz bringt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- prometheus, 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
- 35/100