干貨!詳解頁面標記收集和服務器日志收集的優劣

2021年05月28日 18:05 來源: 作者:fungawai

當前網站分析/統計工具中對訪客行為的追蹤,最常用的方式是Web服務器日志和JavaScript頁面標記兩種,現在主流的是采用頁面標記技術,如51la、Google Analytics、Adobe Analytics等都是采用這一模式。

頁面標記方式之所以被第三方網站統計分析工具廣泛應用,主要原因是:在技術上,頁面分析技術更容易實現;另一方面是,近幾年的云計算大力發展,存儲成本極大降低,計算能力提高,采集到的數據都是在第三方服務器存儲和計算,因此,數據的維護成本也極大降低。

服務器日志技術和頁面標簽記技術這兩種方法各有優缺點,在數據準確度上都不可能保證完全精確,幸好對于網站統計分析而言,并沒有那么高的精度要求,我們只是需要準確的數據,然后查看趨勢,通過數據趨勢判斷問題,定位原因就足夠了。

頁面標記技術基本原理:在訪客請求的頁面中,包含一段或幾段用來記錄客戶端(瀏覽器)行為的JavaScript代碼,在頁面被載入時執行該JS代碼或者在事件被觸發時執行某JS代碼,并將收集到的客戶端行為數據發送給指定的服務器,可能是通過請求某資源的形式,也可能是直接寫入數據庫。JavaScript頁面標記代碼可由網站所有者自定義提供,也可使用第三方工具提供的代碼。頁面標記代碼一般需要覆蓋到所有用戶能訪問到的頁面,通??梢酝ㄟ^將此代碼包含在公共引用模塊中。由第三方提供的代碼,通常會將數據發送到第三方制定的地址,并由第三方工具提供日志分析和數據統計報表,如51la V6網站統計。原則上,JavaScript頁面標記代碼可以追蹤到任何通過JS記錄到的行為和觸發的事件。

頁面標記技術優點:

  • 不受代理和緩存服務器影響,提供更精準的會話跟蹤
  • 可以記錄客戶端的所有JS能記錄的行為,最基本的記錄包括頁面瀏覽、flash事件、Ajax交互、鼠標點擊、滾動條滾動、表單填寫等
  • 實時收集和處理客戶端數據
  • 數據存放在云端,操作上,可以獨立于IT團隊,不用后臺開發人員維護,甚至不用前端開發,可以交給第三方工具(首次代碼鋪設需由網站擁有者添加)維護和統計

頁面標記技術劣勢

  • 錯誤設置容易導致數據丟失,且不能重新處理數據
  • 會受防火墻阻隔
  • 如果瀏覽器不啟用JavaScript,則頁面標記無用,記錄不到這些訪客行為,大約少于2%;
  • 不能追蹤帶寬或下載完成,文件的下載狀態無法直接記錄
  • 搜索機器人不執行JS,故不能追蹤記錄搜索引擎機器人(爬蟲)的行為

服務器日志技術基本原理:用戶對網頁的提出的一次請求,就稱為一次命中。通過Web服務器日志軟件,將請求信息記錄在日志文件中,通過日志分析程序即可獲得點擊流(訪問流)數據。根據這些請求信息,分析軟件可以得到訪客在什么時間請求了什么頁面,是否出錯,從什么地方來的,訪客的客戶端信息和地理位置,還可以通過設置的cookie獲得訪客的更多信息。通過臨時cookie即session表示一次訪問,通過永久cookie標識唯一訪客,或者用IP、IP + User-Agent標識唯一訪客。

服務器日志技術優點:

  • 只要服務器不出問題日志不會丟失,數據更安全可靠,并且可方便處理歷史數據
  • 能夠記錄機器人/自動程序對網站的訪問
  • 所有資源文件(HTML元素)的請求均可記錄,包括追蹤帶寬或下載完成
  • 不會受防火墻阻隔
  • 不受訪問終端設備影響,可以追蹤移動用戶

服務器日志技術劣勢:

  • 不能追蹤事件,只能記錄客戶端對Web服務器的請求日志,非向服務器的請求無法記錄。訪客在客戶端的鼠標點擊行為、對象交互事件,如Ajax交互行為、Flash事件、按鍵鍵入等,無法通過Web服務器日志獲知
  • 受代理和緩存的影響,頁面緩存不會發生服務器請求,也就不會被無服務器日志記錄,而訪客二次訪問網站通常會有本地緩存,因此數據真實性會有偏差
  • 較弱的實時性,網站服務器日志是記錄服務器運行的實時數據的,但是這些數據想要被取出分析,實時性就沒有那么好了
  • 數據需本地存放,占據空間大、不夠便捷

如果您對網頁統計分析的重心在于網站真實訪問者行為的追蹤和分析上,那么,通過日志方法來實現相對而言難度相對比較大,操作也比較繁瑣,這時候應該用頁面標記法來實現對網站訪問數據的收集。

點擊立刻免費注冊使用