2012-04-17 10 views
7

Tôi muốn theo dõi lượt truy cập và nhấp chuột của người dùng trong ứng dụng Rails của tôi để đưa ra đề xuất. Câu hỏi của tôi là:Theo dõi số lần nhấp và lượt truy cập trang của người dùng trong Rails

  • Có đá quý Rails cho điều này hay Google Analytics là tiêu chuẩn? Nếu sau này là đúng, thì làm thế nào tôi nên liên kết một lần truy cập trang đến một hồ sơ người dùng cụ thể?
  • Nó là điển hình trong Rails để có một phần trong application.html.erb, được chia sẻ cho tất cả các trang. Nếu tôi thêm mã theo dõi số lần xem trang Google Analytics vào trong application.html.erb, nó có thể theo dõi tất cả các trang riêng lẻ không?

Trả lời

8

Có nhiều cách khác, nhưng phần lớn có thể sử dụng Google Analytics. Một số đá quý tồn tại giúp bạn tích hợp với GA để lấy dữ liệu. Xem tại đây: https://www.ruby-toolbox.com/categories/Web_Analytics.

Dựa trên câu hỏi đầu tiên của bạn, có vẻ như bạn có thể muốn hiểu rõ hơn GA có thể cung cấp. Tôi đã sử dụng ClickTale (http://www.clicktale.com) và Woopra (http://www.woopra.com) trước đây, để có hiệu quả tốt. Bài viết này cũng liệt kê một số lựa chọn thay thế khác - chú ý đến các điểm cao cho Clicky: http://imimpact.com/web-stats-alternatives-to-google-analytics/.

Google Analytics (và hầu như tất cả những người khác) sẽ tự động xử lý câu hỏi thứ hai của bạn bất cứ khi nào người dùng tải một trang mới, vì nó được khóa bằng URL. Điều đó có nghĩa là, mặc dù bạn đặt mã tập lệnh GA ở một nơi duy nhất, mỗi trang duy nhất được theo dõi riêng lẻ.

Nếu bạn có yêu cầu AJAX thay đổi trang đó mà không thay đổi URL, bạn sẽ cần đào sâu vào API tập lệnh GA. Về cơ bản, bạn sẽ cần phải đẩy một url mới (có thể với một số trong nó) bất cứ khi nào bạn muốn theo dõi một liên kết/nút bấm AJAX-driven. Xem tại đây: http://davidwalsh.name/ajax-analytics

+0

Cảm ơn câu trả lời cực nhanh của bạn! – AdamNYC

+0

Bây giờ thậm chí còn toàn diện hơn! –

+0

Tuyệt vời! Cảm ơn một lần nữa. – AdamNYC

9

Tôi thành kiến, nhưng tôi khuyên bạn nên kiểm tra impressionist, nếu bạn cần tích hợp lượt xem trang vào ứng dụng trong thời gian thực. Với phân tích, bạn sẽ luôn có thời gian trễ và bạn cũng dựa vào sự phụ thuộc bên ngoài. Ấn tượng là tốt nếu bạn cần loại kiểm soát này, nhưng nếu bạn chỉ tìm kiếm các số liệu đơn giản và không cần phải kéo chúng vào ứng dụng thì phân tích có thể là cách để đi.

+0

Cảm ơn rất nhiều. Đá quý sẽ rất tuyệt! – AdamNYC

+0

Tôi thực sự cần phải quen với cách "Rails", tức là ai đó đã giải quyết được vấn đề của tôi :) Tôi đã rất gần viết chức năng chính xác này từ đầu khi tôi tìm thấy câu trả lời của bạn .. cảm ơn! –

+0

lần hiển thị sử dụng cơ sở dữ liệu để tăng số liệu thống kê đôi khi chậm trong khối lượng công việc cao. Thanh toán đá quý https://github.com/tranvictor/lion_attr – vutran

3

Kiểm tra Ahoy, tại https://github.com/ankane/ahoy. Chỉ với một vài dòng mã trong ứng dụng của bạn, bạn có thể theo dõi lượt xem trang và liên kết chúng với tài khoản người dùng.

Bạn có thể tùy chỉnh thêm Ahoy để theo dõi các sự kiện tùy chỉnh, cả khách hàng (với JavaScript) và máy chủ.

Ahoy không phụ thuộc vào bất kỳ dịch vụ của bên thứ ba nào.