Development #35527
L'extraction du code HTTP ne marche plus dans wf/wscall en cas d'erreur
Début:
21 août 2019
Echéance:
% réalisé:
0%
Temps estimé:
Patch proposed:
Oui
Planning:
Non
Description
Le test if response:
dans wcs/wf/wscall.py ne marche plus car requests
défini Response
ainsi :
class Response(... ... def __nonzero__(self): """Returns true if :attr:`status_code` is 'OK'.""" return self.ok
Ce code :
def action_on_error(self, action, formdata, response=None, data=None, exc_info=None): if action in (':pass', ':stop') and (self.notify_on_errors or self.record_errors): if exc_info: summary = traceback.format_exception_only(exc_info[0], exc_info[1])[-1] else: summary = '' if response: summary = '%s %s' % (response.status_code, response.reason) try: raise Exception(summary) except Exception as e: exc_info = sys.exc_info()
fait simplement raise Exception('')
en cas d'erreur HTTP.
On reçoit des traces pas très intéressante de ce style :
To: admin+montpellier.prod@entrouvert.com Date: Wed, 21 Aug 2019 20:00:52 +0200 Exception: type = '<type 'exceptions.Exception'>', value = '' Stack trace (most recent call first): File "/usr/lib/python2.7/dist-packages/wcs/wf/wscall.py", line 411, in action_on_error 409 410 if self.notify_on_errors: > 411 get_publisher().notify_of_exception(exc_info, context='[WSCALL]') 412 if self.record_errors and formdata.evolution: 413 formdata.evolution[-1].add_part(
Fichiers
Révisions associées
Historique
Mis à jour par Benjamin Dauvergne il y a plus de 4 ans
- Description mis à jour (diff)
- Assigné à
Benjamin Dauvergnesupprimé
Mis à jour par Benjamin Dauvergne il y a plus de 4 ans
- Fichier 0001-wf-wscall-test-if-response-is-not-None-35527.patch 0001-wf-wscall-test-if-response-is-not-None-35527.patch ajouté
- Tracker changé de Bug à Development
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
Mis à jour par Frédéric Péters il y a plus de 4 ans
- Statut changé de Solution proposée à Solution validée
Tant qu'à faire, tu mettrais summary = '<no response>' au-dessus, à la place de '' ?
Mis à jour par Benjamin Dauvergne il y a plus de 4 ans
- Statut changé de Solution validée à Résolu (à déployer)
commit 54d85328288b2e0ba21ee1b8e40fba2d96cdcf8f Author: Benjamin Dauvergne <bdauvergne@entrouvert.com> Date: Wed Aug 21 20:23:52 2019 +0200 wf/wscall: test if response is not None (#35527)
Mis à jour par Benjamin Dauvergne il y a plus de 4 ans
Frédéric Péters a écrit :
Tant qu'à faire, tu mettrais summary = '<no response>' au-dessus, à la place de '' ?
Je l'ai mis mais en fait je pense que ça ne peut juste pas arriver ou alors j'ai raté un chemin dans le code.
Mis à jour par Frédéric Péters il y a plus de 4 ans
- Statut changé de Résolu (à déployer) à Solution déployée
wf/wscall: test if response is not None (#35527)