Ruby on rails 在Rails应用程序中记录功能使用情况

Ruby on rails 在Rails应用程序中记录功能使用情况,ruby-on-rails,logging,Ruby On Rails,Logging,我对记录用户在我的Rails应用程序中使用的功能感兴趣。我知道有关于性能指标、记录用户活动(例如,公共_活动)或更一般的分析(例如,谷歌分析)的现有gem,但我要寻找的是一点不同 例如,如果我有一个允许用户导出其数据的功能,您会推荐什么服务来跟踪有多少用户(以及哪些用户)正在使用此功能?简单的选择当然是编写另一个模型(例如活动),跟踪使用情况: class Activity < ActiveRecord::Base # attributes for resource (export

我对记录用户在我的Rails应用程序中使用的功能感兴趣。我知道有关于性能指标、记录用户活动(例如,公共_活动)或更一般的分析(例如,谷歌分析)的现有gem,但我要寻找的是一点不同


例如,如果我有一个允许用户导出其数据的功能,您会推荐什么服务来跟踪有多少用户(以及哪些用户)正在使用此功能?

简单的选择当然是编写另一个模型(例如活动),跟踪使用情况:

class Activity < ActiveRecord::Base
    # attributes for resource (export, in this case), action type (Excel export) and user id
end
类活动
然后它可以应用于ExportController上的before_过滤器:

ExportController < ApplicationController
    before_filter :register_activity

    def register_activity
       ExportActivity.create { } # Apply the params here
    end
end
ExportController

通过这种方式,您还可以轻松访问数据并对其进行统计。

谢谢您的建议,但这是否需要为我要监控的每一次活动都提供一个新的模型?我可能希望每种类型的活动都有不同的属性,所以这似乎会变得很难处理……是的,这是真的。如果您需要对这些属性进行一些处理,这还不够,因为它们很可能是字符串。