Projet

Général

Profil

Development #82378

Avoir les logs des appels HTTP sur les jobs (avec un bloc atomic qui rollback)

Ajouté par Nicolas Roche il y a 7 mois. Mis à jour il y a 7 mois.

Statut:
Rejeté
Priorité:
Normal
Assigné à:
Version cible:
-
Début:
16 octobre 2023
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Non
Planning:
Non

Description

J'ai l'impression que ça manque :
quand j'ai un bug sur un appel webservice lancé par un job, je dois relancer rejouer l'appel en python pour avoir la requête et sa réponse.


Fichiers


Demandes liées

Lié à Passerelle - Development #31204: Les logs dans des blocs atomiques qui échouent ne sont pas conservés (rollback)Fermé07 mars 2019

Actions

Historique

#2

Mis à jour par Benjamin Dauvergne il y a 7 mois

  • Statut changé de Nouveau à Information nécessaire
#3

Mis à jour par Benjamin Dauvergne il y a 7 mois

  • Assigné à mis à Benjamin Dauvergne

Je ne vois pas de raison que les logs de fonctionnent pas par défaut, a priori il y a un souci spécifique dans le cas d'un appel situé dans un bloc atomic qui rollback (#31204, a relire et rebaser un jour) mais dans le cas général je ne vois pas de souci.

PS: je vois donc que c'est possiblement ce cas dans Invoice.notify(), Invoice.cancel() et Subscription.trigger() dans le code de toulouse_maelis, le ticket #31204 est donc peut-être exactement ce qu'il te faut.

#4

Mis à jour par Benjamin Dauvergne il y a 7 mois

  • Assigné à Benjamin Dauvergne supprimé
#5

Mis à jour par Benjamin Dauvergne il y a 7 mois

  • Lié à Development #31204: Les logs dans des blocs atomiques qui échouent ne sont pas conservés (rollback) ajouté
#6

Mis à jour par Nicolas Roche il y a 7 mois

  • Assigné à mis à Nicolas Roche

PS: je vois donc que c'est possiblement ce cas dans Invoice.notify(), Invoice.cancel() et Subscription.trigger()

Oui, je pensais à ça.
Merci pour le lien, je regarde.

#7

Mis à jour par Nicolas Roche il y a 7 mois

Je souhaiterais récupérer les trames SOAP sur les jobs, parce que j'en ai besoin pour ouvrir un ticket chez Sigec.

Pour tester, je crée un job qui tente de notifier une ancienne facture sur le conneteur maélis pour simuler une erreur.

$ passerelle-manage shell -d parsifal-passerelle.dev.publik.love
from passerelle.contrib.toulouse_maelis.models import ToulouseMaelis
con = ToulouseMaelis.objects.get(slug='test')
invoice = [x for x in con.invoice_set.all() if x.lingo_data][0]
invoice.notify()
Fault: E36 : La personne d'identifiant [261766] n'existe pas dans la base Maelis

con.add_job('notify_invoice_paid_job', regie_id=invoice.regie_id, invoice_id=invoice.invoice_id, natural_id='%s/%s' % (invoice.regie_id, invoice.invoice_id))
<Job: Job object (122)>

$ passerelle-manage tenant_command cron -v2 --connector toulouse-maelis jobs --connector-slug test --domain parsifal-passerelle.dev.publik.love

Je récupère bien les trames envoyées avec le patch, comme le montre la capture d'écran :
un premier job est lancé (9h52) sans le patch, puis un second (10h07) avec le patch.

#8

Mis à jour par Nicolas Roche il y a 7 mois

  • Sujet changé de Avoir les logs des appels HTTP sur les jobs à Avoir les logs des appels HTTP sur les jobs (avec un bloc atomic qui rollback)
  • Statut changé de Information nécessaire à Rejeté

Formats disponibles : Atom PDF