3

Django サーバーが処理する要求と応答をログに記録するにはどうすればよいですか?

Django サーバー アプリケーションにテーブルとリレーションがあります。多くのテーブルは、いくつかの API エンドポイントを通じて公開されます。パラメータを使用して GET/POST リクエストを受け取り、Python で関数を実行して結果を返すカスタム関数もいくつかあります。

サーバー管理者として、すべての受信リクエストとこれらの各リクエストの送信応答をログに記録したいと考えています。各リクエストで作成された GET/POST パラメータと、各レスポンスで送信されるデータをキャプチャすることは、私にとって不可欠です。これを実装するための最良の方法は何ですか?

4

2 に答える 2

1

Django を介してこれを行わないことをお勧めします。リクエストの作業負荷を増やすだけです。アプリケーションを遅くするつもりです。それはすべて、アプリケーションを「1 か所」に置くことができるようにするためです。「仕事に適したツール」であることを忘れないでください。

標準のロガー ファイル/syslog にログを記録してから、GrayLog/Loggly/Splunk/Logstash/などを使用することを強くお勧めします。-- 長期的には私に感謝します。Django サーバーや DB を粉砕するつもりはありません。

冗談だと思うなら、これを考えてみてください。これをミドルウェアに入れる可能性が高くなりますよね? 認証前ですよね?私があなたの人生を生き地獄にしたいのなら、私がしなければなら while true; do curl https://yourdomain.com/doesnt-need-to-exist &; done ないことは、あなたのサービス全体を低下させることは言うまでもなく、数日であなたのDBをいっぱいにすることです. 誰もが恩恵を受け、データベース、特にログを保存するための製品データベースを使用しないでください

于 2020-08-14T19:39:05.553 に答える