module AppmospheresAudit::RecordTrail

Public Instance Methods

track_create() click to toggle source
# File lib/appmospheres_audit.rb, line 58
def track_create
  begin
    EventLog.create!(:event_type => self.class.to_s, :action => "create", :payload => self.id.to_yaml)
  rescue
    Rails.logger.warn "Could not log event 'create' for #{self.class.to_s}:#{self.id}" rescue true
  end
end
track_destroy() click to toggle source
# File lib/appmospheres_audit.rb, line 76
def track_destroy
  begin
    filtered_params = Rails.application.config.filter_parameters + (AppmospheresAudit.filter_parameters || [])
    EventLog.create!(:event_type => self.class.to_s, :action => "destroy", :payload => self.serializable_hash.except(*filtered_params.map(&:to_s)).to_yaml)
  rescue
    Rails.logger.warn "Could not log event 'destroy' for #{self.class.to_s}:#{self.inspect}" rescue true
  end
end
track_update() click to toggle source
# File lib/appmospheres_audit.rb, line 66
def track_update
  begin
    filtered_params = Rails.application.config.filter_parameters + (AppmospheresAudit.filter_parameters || [])
    EventLog.create!(:event_type => self.class.to_s, :action => "update",
      :payload => self.changes.merge({:id => self.id}).except(*filtered_params).to_yaml)
  rescue
    Rails.logger.warn "Could not log event 'update' for #{self.class.to_s}:#{self.changes.inspect}" rescue true
  end
end