Module: ProcessMetrics::Persistence::ActiveRecord

Defined in:
lib/process_metrics/persistence/version.rb,
lib/process_metrics/persistence/active_record.rb,
lib/process_metrics/persistence/active_record/metric.rb,
lib/process_metrics/persistence/active_record/migration.rb

Defined Under Namespace

Classes: Metric, Migration

Constant Summary collapse

VERSION =
"0.1.6"

Class Method Summary collapse

Class Method Details

.connection=(connection_info) ⇒ Object



12
13
14
# File 'lib/process_metrics/persistence/active_record.rb', line 12

def self.connection=(connection_info)
  ::ActiveRecord::Base.establish_connection(connection_info)
end

.drop!Object



22
23
24
25
26
# File 'lib/process_metrics/persistence/active_record.rb', line 22

def self.drop!
  ::ActiveRecord::Base.connection_pool.with_connection do
    ProcessMetrics::Persistence::ActiveRecord::Migration.new.down
  end
end

.save(metric) ⇒ Object



28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/process_metrics/persistence/active_record.rb', line 28

def self.save metric
  begin
    ::ActiveRecord::Base.connection_pool.with_connection do
      Metric.create! metric.attributes
    end
  rescue
    ProcessMetrics.config.logger.error $!.message
    $!.backtrace.each do |backtrace_line|
      ProcessMetrics.config.logger.error backtrace_line
    end
  end
end

.setup!Object



16
17
18
19
20
# File 'lib/process_metrics/persistence/active_record.rb', line 16

def self.setup!
  ::ActiveRecord::Base.connection_pool.with_connection do
    ProcessMetrics::Persistence::ActiveRecord::Migration.new.up
  end
end

.table_name=(table_name) ⇒ Object



8
9
10
# File 'lib/process_metrics/persistence/active_record.rb', line 8

def self.table_name=(table_name)
  ProcessMetrics::Persistence::ActiveRecord::Metric.table_name = table_name
end