2016-10-13 11 views
2

私はDjangoベースのAPIを持っています。Django 400の分析目的のための悪い要求を保存する

お客様のご要望の一部が、想定されていないものであっても、400(悪いリクエスト)を返す場合があります。

すべてのヘッダー(アクセストークンなど)とタイムスタンプを使用して、失敗したリクエストを保存することで、正確な問題を処理し、デバッグするのに良い方法を考えました。それをデバッグして理由を見つけることができるでしょう。

私の方法に関する私の質問は - 私はどのように私は400のステータスで応答を返しているすべてのヘッダで要求を収集する関数を "トリガ"できますか? 400応答はジャンゴによって生成される

+0

実際にはDjango自身が400応答を生成していますか? –

+0

私はDjango Restフレームワークを使用していますが、400が悪い要求に対してそこに生成されていますが、返されたレスポンスのステータスを一般的にチェックし、ログが必要かどうかを判断します。 – Tay

+0

cf my answer then ... –

答えて

1

場合は、使用することができますcustom middleware(用心:ミドルウェアAPIはジャンゴ< =ドキュメントがhereである1.9のために、1.10に変更)とlogging moduleが - ちょうどあなたのロギングがでcorrectly configuredであることを確認してくださいあなたのdjango設定。

400応答は、より高いレベルで発生した場合、あなたはあなたのプロジェクトが

展開されている方法に応じて、関連するドキュメントをチェックする必要がありますHttpRequestオブジェクトをinstanciatingながらUnicodeDecodeErrorが発生したときにもFYIY django.core.WSGIHandlerは400応答を生成します - この場合、AFAICTでは、ミドルウェアは呼び出されません。 django.requestshttps://docs.djangoproject.com/en/1.10/topics/logging/#django-request)のために設定されたロガーでは、これらの発生の痕跡はすでに見つかっているはずです

関連する問題