0
我々は(のCRM、メールプロバイダなど)外部依存関係を呼び出して、ユーザーオブジェクトには、いくつかのDjangoのポストセーブ信号を持っています。これらの呼び出しは素敵な呼び出しであり、発生した場合にユーザーをブロックしたり、エラーを起こすべきではありません。普遍的にDjangoシグナルのエラーを抑制する?
ライブラリーにはさまざまなエラー状態(外部サービス、不良キーなどに接続できない)があり、モデル化するのに苦労しました。そのため、例外抑制デコレータを作成しました。彼らは決してブロックしません。
def exception_suppressor()
def suppressor(*args, **kwargs):
try:
return fn(*args, **kwargs)
except Exception as e:
LOGGER.info("Suppressing exception: " + str(e))
return suppressor
- これは広く行われていますか?それを行うより良い方法はありますか?
- これを提供できる組み込み機能はありますか?私はこれを許可したコンテクストブロック構造のある を見たが、デコレータは見ていなかった。