lyft / lyft/python-blessclient
Cannot refresh public IP randomly
Ouverte
Personne n'a encore pris cette issue.
- Langage dominant
- Python
- Étoiles
- 117
- Forks
- 31
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
On occasion, on the first cold run:
DEBUG:root:Cache get disabled
DEBUG:root:Cache get disabled
DEBUG:root:Getting current public IP DEBUG:root:Could not refresh public IP from http://api.ipify.org Traceback (most recent call last): File "/home/marc/.blessclient/blessclient/user_ip.py", line 53, in _fetchIP
with contextlib.closing(urlopen(url, timeout=2)) as f: File "/home/marc/.pyenv/versions/2.7.12/lib/python2.7/urllib2.py", line 154, in urlopen return opener.open(url, data, timeout) File "/home/marc/.pyenv/versions/2.7.12/lib/python2.7/urllib2.py", line 429, in open response = self._open(req, data) File "/home/marc/.pyenv/versions/2.7.12/lib/python2.7/urllib2.py", line 447, in _open
'_open', req) File "/home/marc/.pyenv/versions/2.7.12/lib/python2.7/urllib2.py", line 407, in _call_chain result = func(*args)
File "/home/marc/.pyenv/versions/2.7.12/lib/python2.7/urllib2.py", line 1228, in http_open return self.do_open(httplib.HTTPConnection, req) File "/home/marc/.pyenv/versions/2.7.12/lib/python2.7/urllib2.py", line 1201, in do_open r = h.getresponse(buffering=True) File "/home/marc/.pyenv/versions/2.7.12/lib/python2.7/httplib.py", line 1136, in getresponse response.begin() File "/home/marc/.pyenv/versions/2.7.12/lib/python2.7/httplib.py", line 453, in begin version, status, reason = self._read_status() File "/home/marc/.pyenv/versions/2.7.12/lib/python2.7/httplib.py", line 409, in _read_status
line = self.fp.readline(_MAXLINE + 1)
File "/home/marc/.pyenv/versions/2.7.12/lib/python2.7/socket.py", line 480, in readline data = self._sock.recv(self._rbufsize) timeout: timed out
DEBUG:root:Could not refresh public IP from http://canihazip.com
Traceback (most recent call last):
File "/home/marc/.blessclient/blessclient/user_ip.py", line 53, in _fetchIP
with contextlib.closing(urlopen(url, timeout=2)) as f: File "/home/marc/.pyenv/versions/2.7.12/lib/python2.7/urllib2.py", line 154, in urlopen return opener.open(url, data, timeout) File "/home/marc/.pyenv/versions/2.7.12/lib/python2.7/urllib2.py", line 429, in open
response = self._open(req, data) File "/home/marc/.pyenv/versions/2.7.12/lib/python2.7/urllib2.py", line 447, in _open '_open', req) File "/home/marc/.pyenv/versions/2.7.12/lib/python2.7/urllib2.py", line 407, in _call_chain result = func(*args) File "/home/marc/.pyenv/versions/2.7.12/lib/python2.7/urllib2.py", line 1228, in http_open
return self.do_open(httplib.HTTPConnection, req) File "/home/marc/.pyenv/versions/2.7.12/lib/python2.7/urllib2.py", line 1201, in do_open r = h.getresponse(buffering=True)
File "/home/marc/.pyenv/versions/2.7.12/lib/python2.7/httplib.py", line 1136, in getresponse response.begin() File "/home/marc/.pyenv/versions/2.7.12/lib/python2.7/httplib.py", line 453, in begin version, status, reason = self._read_status() File "/home/marc/.pyenv/versions/2.7.12/lib/python2.7/httplib.py", line 409, in _read_status line = self.fp.readline(_MAXLINE + 1)
File "/home/marc/.pyenv/versions/2.7.12/lib/python2.7/socket.py", line 480, in readline
data = self._sock.recv(self._rbufsize)
timeout: timed out
Traceback (most recent call last):
File "/home/marc/.blessclient/blessclient.run", line 11, in <module>
load_entry_point('blessclient', 'console_scripts', 'blessclient')()
File "/home/marc/.blessclient/blessclient/client.py", line 643, in main
bless(region, args.nocache, args.gui, args.host, bless_config)
File "/home/marc/.blessclient/blessclient/client.py", line 547, in bless
my_ip = userIP.getIP()
File "/home/marc/.blessclient/blessclient/user_ip.py", line 29, in getIP
self._refreshIP()
File "/home/marc/.blessclient/blessclient/user_ip.py", line 43, in _refreshIP
raise Exception('Could not refresh public IP')
Exception: Could not refresh public IP
Immediately re-running this works.
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par blessclient/user_ip.py, en particulier getIP, _refreshIP et _fetchIP, puis suivez l’appel depuis blessclient/client.py. Reproduisez le délai d’expiration du cold-run avec les deux endpoints public-IP indiqués et vérifiez qu’une première exécution se termine sans lever « Could not refresh public IP ».
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- python
- Domaine
- networking
- Type d'issue
- Bug
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 45/100