2011-06-01 74 views
0

我正在尋找一些改進以下問題解決方案的指針。儘管我正在使用Unix工具鏈,但我更傾向於使用一般方法而不是實現。完成網站訪問審覈和報告的策略

這裏,我們去:

的網站每天的訪問應記錄和企業用戶應該能夠在近實時報告它(有5分鐘的延遲是可以接受的)。報告將按用戶或時間段或兩者的組合進行過濾。

匿名用戶訪問記錄爲良好,信息在登錄前應與在已註冊的用戶一旦匿名用戶登錄。

我要記錄每個頁面的訪問(GET或POST)加任何參數加上時間戳。

報告的要求是:「告訴我,上午11:15和11:18之間有什麼用戶ID 1沒有」

和響應應該是:

  • 在11時15分23秒,他來到到主頁。
  • 11:15:49他去了我們的頁面。
  • 11:16:23他去了登錄頁面。
  • 11:16:34他試圖用用戶名「hacked」登錄。
  • 在11時16分38秒的登錄請求失敗 - 用戶名/密碼不正確
  • 在11點16分45秒,他在登錄時的用戶名「myuser的」
  • 在十一時17分12秒他又到產品頁面。

解決方法是將所有這些使用會話ID作爲主鍵和帳戶ID以及請求數據插入到數據庫中。

爲了不阻止數據庫插入之間的消息隊列,並延遲寫入數據庫。

但是,隨着數據庫中數據量的增加,報告可能會很快變慢。

我知道像woopra解決方案 - 但我希望可以先內部還保持訪問者數據,如內部與內部基於角色的訪問數據報告的想法,等

編輯:你過去是如何做到這一點的,或者如果你有完整的選擇選擇,你會怎麼做?

+0

我在那裏看不到問題。 – jgauffin 2011-06-01 14:30:34

+0

夠公平 - 已添加。 – Longestline 2011-06-01 23:44:17

回答

0

立即執行某些操作的更簡單方法是在您的服務器/應用程序上實施谷歌分析,而無需太多開銷。

使用它的缺點是事件並不是實時的......這是幾個小時的時間。

另一種解決方案是將消息傳遞解決方案實施到單獨的數據庫,然後重新執行

+0

你能否完成這個答案?有一個塊被切斷。 Google Analytics(分析)正如您所提到的那樣延遲,因此不是理想的解決方案除此之外,Google Analytics不支持POST參數AFAIK。 – Longestline 2011-06-01 23:49:13