En jouant avec le code source de l'application Web, j'ai rencontré la situation suivante.
--Lorsque vous exécutez une certaine fonction, vous souhaitez continuer le processus en transmettant uniquement l'erreur causée par le processus spécifique.
Je l'ai écrit comme ça dans try / catch de python et cela a fonctionné, alors je vais l'écrire sous forme de mémorandum.
class SampleException(Exception):
pass
def specific_func(raise_error: bool):
if raise_error:
raise Exception("error from specific_func")
else:
print("[INFO] success specific_func")
def error_sample(raise_error: bool):
try:
specific_func(raise_error=raise_error)
except Exception as e:
print("[ERROR] ",e)
raise SampleException("Certains traitements ont échoué")
finally:
print("[INFO]Le processus que vous souhaitez exécuter")
main.py
print("===Système anormal=====================")
try:
error_sample(raise_error=True)
print("(notification)Traitement réussi")
except SampleException as e:
print("(notification)", e)
print("===Système normal=====================")
try:
error_sample(raise_error=False)
print("(notification)Traitement réussi")
except SampleException as e:
print("(notification)", e)
===Système anormal=====================
[ERROR] error from specific_func
[INFO]Le processus que vous souhaitez exécuter
(notification)Certains traitements ont échoué
===Système normal=====================
[INFO] success specific_func
[INFO]Le processus que vous souhaitez exécuter
(notification)Traitement réussi
Recommended Posts