私の django サイトのすべてのユーザーが何をしているかを追跡したいと考えています。提供されたすべての HTML ページを保存することで、これを行いたいと考えています。これを行う最も簡単な方法は何ですか?現在、HTML を提供する前に HTML をファイルに保存するデコレータを作成することを検討していましたが、これにはすべてのビューにそのデコレータを追加する必要があり、理想的ではないようです。
3 に答える
1
django シグナルを使用します。
シグナルは、request_finishedDjango が処理を終了したときに呼び出されHttpRequest、ページを返すすべてのビューの最後に発生します。ここで、応答のセットにアクセスしparamsて、ユーザーに表示される方法でページを生成するか、単に保存してresponse_objectからバッチ プロセスを実行してオフラインで視覚化できます。
于 2012-08-17T22:19:58.840 に答える
0
サイトごとのキャッシュを実装してから、キャッシュにクエリを実行して統計を取得できます。ただし、他の人が投稿したように、ミドルウェアは理想的です。
ただし、ミドルウェアはすべてのリクエストで呼び出されることに注意してください。したがって、db 書き込みなどの I/O 負荷の高いタスクを実行している場合、サイトのパフォーマンスに悪影響を及ぼします。
于 2012-08-17T22:21:59.000 に答える