0

ASP.Net で一連のデータをキャプチャし、処理のためにサービスに送信しようとしています。まず、クラスで使用できる少量のデータにのみ関心がありますHttpRequest。例: IP アドレス、URL など。私が最初に考えたのは、これらの特定の値をサービスに送信して処理することでした。これはすべて SQL Server データベースに格納されます。

しかし、私はこれを「将来的に証明する」方法を考え始め、すべてをキャプチャHeadersして名前と値のペアとして保存するというアイデアをいじり始めました。アクセスできると便利な場合もあることにすぐに気付きましServerVariablesた。たとえば、URL RewriteHTTP_X_ORIGINAL_URLを使用した場合、アクセスして、ブラウザーにある URL を特定したいとします 。最初にこの値を取得することを考えていなかったとしたら、戻ってデータを再処理する方法はありませんでした。

ご覧のとおり、最初は比較的少量のデータだったものが、予想していたよりもはるかに多くなっています。これらの Web サイトのトラフィック量は比較的少ないため、必要にServerVariables応じてすべてのリクエストを保存することもできますが、やり過ぎのように思えます。

Google アナリティクスのように、これらすべてを提供するサービスがあることは知っていますが、重要な要件の 1 つは、このデータを認証されたユーザーに関連付けることであり、これは Google の TOS に厳密に違反しています。

独自の分析サービスを手作業で展開する方法について、誰か提案はありますか? 外部にServerVariablesアクセスする必要があるデータはありますか?

どんな助けにも感謝します:)

4

1 に答える 1

2

自問する必要がある主な質問は、この追加のログ記録の目的は何ですか?

営業担当者に追加のデータを提供する場合は、ほとんどの場合、非常に少量のデータ (どのページがいつアクセスされたか) が必要になります。

目的がパフォーマンスの向上である場合、それは他のパラメーターのセットです。

しかし、あなたは結果が何であるかから始める必要があります。

私は、同様のシステムを実装する必要があるプロジェクトに取り組んでいました。Web サイトは、1 つのメイン マスター ページと他の子ページに基づいていました。メイン マスター ページの Page_Load を取得し、そこにすべてのロジックを追加しました。

訪問者用に 1 つのデータベース テーブル (追跡 ID、参照 Web サイト、作成日、認証 ID など) と、ページ訪問ごとに 1 つのテーブル (完全なページ URL (クエリ文字列、短いページ URL、訪問時間) を含む) があります。また、マーケティングの観点から、各ページへの訪問がどれだけ価値があるかを評価するのに役立つ 2 つの追加のテーブルもあります。

ログ ファイルにはすべてのリクエスト (画像、JavaScript ファイル、ビデオなどのリクエストなど) に関する情報が含まれているため、ログ ファイルの解析は避けたいと思います。また、デフォルトでは、ログ ファイルには、アクティビティを認証済みユーザーに関連付けるために使用できるログイン情報は含まれていません。

于 2013-05-29T08:39:24.260 に答える