この質問への回答では、オープンソースの GAnalytics 代替Piwikについて言及しています。これは C# ではありませんが、実装を見ていくつかのアイデアが得られるかもしれません。
.NET ソリューションについては、Matt Berseth のVisit/PageView Analysis Services Cubeブログ投稿を読むことをお勧めします (彼のサイトでは見つけにくいため、以前の例と別の例を参照してください)。
彼がサーバー側のコードを投稿したことがあるかどうかはわかりませんが (ただしopenurchin.js
、彼の HTML にリンクされています)、ほとんどの概念が説明されています。彼の指示に従うことで、何かがすぐに機能するようになる可能性があります。
テキスト ファイルに書き込みたいとは思いません。ロックの問題が発生する可能性があります。データベーステーブルへのINSERTを行います。テーブルが大きくなりすぎた場合は、いつでも結果を定期的に「ロールアップ」して古いレコードを削除できます。REFERER Url に関しては、HTTP HEADERS から確実にその情報を取得できます (クライアントによって送信され、プロキシまたは厳密な AV ソフトウェア設定によって削除されていないと仮定します)。
ところで、Google アナリティクスは統計に多くの価値を追加することに注意してください。IP アドレスをジオコーディングして、場所 (国/都市) および ISP/IP 所有者別に結果を表示します。彼らの JavaScript は Flash 検出を行い、User-Agent を有用な「ブラウザ カテゴリ」に分割し、オペレーティング システムや画面解像度などの他のユーザー設定も検出します。これは、同じレベルのレポートを作成したい場合に実行する必要がある重要なコーディングです。入口ページと出口ページの情報、再訪問、ユニーク訪問者、再訪問者、滞在時間などを取得するためのデータと計算は言うまでもありません。サイトなど
Google アナリティクス APIもありますので、ぜひチェックしてみてください。