使用Librato记录对模型的更改

时间:2015-10-08 23:45:21

标签: ruby-on-rails heroku devise librato

我有一个Devise模型:

class Account < ActiveRecord::Base
  devise ::trackable

我希望看到在Librato中创建并登录Account的次数。

1 个答案:

答案 0 :(得分:0)

使用Librato的log stream parsing,您可以使用$stdout.puts记录事件。

我建议将此日志解压缩到concern,然后使用model callbacks监控更改。

我们可以在lib/librato/account.rb中创建一个文件:

module Librato
  module Account
    extend ActiveSupport::Concern

    included do
      after_create do
        $stdout.puts 'count#account.create=1'
      end

      after_save if: :current_sign_in_at_changed? do
        $stdout.puts 'count#account.sign_in=1'
      end
    end
  end
end

然后将其包含在您的模型中,因此:

class Account < ActiveRecord::Base
  include Librato::Account