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.10"
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
|
.save(metric) ⇒ Object
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
# File 'lib/process_metrics/persistence/active_record.rb', line 28
def self.save metric
begin
::ActiveRecord::Base.connection_pool.with_connection do
metric_attributes = metric.attributes.with_indifferent_access
Metric.find_or_create_by_parent_uuid metric_attributes[:parent_uuid] if metric_attributes[:parent_uuid]
metric = Metric.new
metric.uuid = metric_attributes[:uuid]
metric.parent_uuid = metric_attributes[:parent_uuid]
metric.name = metric_attributes[:name]
metric.data = metric_attributes[:data]
metric.started_at = metric_attributes[:started_at]
metric.finished_at = metric_attributes[:finished_at]
metric.save!
end
rescue
ProcessMetrics.config.logger.error $!.message
$!.backtrace.each do |backtrace_line|
ProcessMetrics.config.logger.error backtrace_line
end
end
end
|
.table_name=(table_name) ⇒ Object