Projet

Général

Profil

Development #63217

dans une action de masse, limiter le nombre d'erreurs notifiées par email

Ajouté par Frédéric Péters il y a environ 2 ans. Mis à jour il y a environ 2 ans.

Statut:
Nouveau
Priorité:
Normal
Assigné à:
-
Version cible:
-
Début:
26 mars 2022
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Non
Planning:
Non

Description

Sur une erreur d'expression ou de webservice dans une action de workflow, avec une configuration pour accompagner l'enregistrement de l'erreur d'un mail, quand ça se trouve utilisé via une action globale en masse, ça peut faire beaucoup de mails qui se répètent. Beaucoup beaucoup.

On pourrait dans MassActionAfterJob initialiser un flag sur le publisher puis dans publisher.record_error garder un décompte du nombre d'erreurs notifiées par mail et arrêter à un seuil à fixer, type 50. (on pourrait éventuellement continuer après à notifier, 1 sur 100, augmenter progressivement l'intervalle de notif).

À noter aussi qu'il y a déjà eu truc pour ne pas être notifié pour les mêmes erreurs répétées mais ça n'est pas opérationnel quand record=False (et qu'on a donc pas de logged_exception),

        if not notify or logged_exception and logged_exception.occurences_count > 1:
            # notify only first occurence
            return

Historique

#1

Mis à jour par Lauréline Guérin il y a environ 2 ans

Autre idée: tout le temps enregistrer une LoggedError, mais ajouter un flag visible=record. On n'affiche que les visible=True.
Du coup on bénéficie du bout de code mentionné, qui n'envoie qu'un seul mail par erreur (on pourrait aussi quand même envoyer un mail de "rappel" toutes les n occurrences)

Formats disponibles : Atom PDF