prometheus / prometheus/client_python
reuse address on server
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
start_hpp_server should reuse the port if it is already being used, most likely due to an earlier instance going down and we are restarting
File "lib64/python3.4/site-packages/prometheus_client/exposition.py", line 103, in run
httpd = HTTPServer((addr, port), MetricsHandler)
File "/usr/lib64/python3.4/socketserver.py", line 430, in __init__
self.server_bind()
File "/usr/lib64/python3.4/http/server.py", line 136, in server_bind
socketserver.TCPServer.server_bind(self)
File "/usr/lib64/python3.4/socketserver.py", line 444, in server_bind
self.socket.bind(self.server_address)
OSError: [Errno 98] Address already in use
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 mit start_hpp_server und dem HTTPServer-Setup, das in lib64/python3.4/site-packages/prometheus_client/exposition.py in Zeile 103 gezeigt wird. Reproduziere das Neustart-Szenario, das Errno 98 auslöst, und untersuche anschließend den umgebenden Server-Startpfad. Als erledigt gilt die Aufgabe, wenn eine vorherige Instanz beendet werden kann und der Server am selben Port neu gestartet werden kann, ohne den gemeldeten Fehler „address-in-use“ zu erhalten.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- observability
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 45/100