talentbox-newrelic-sequel 0.0.8 → 0.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/newrelic_sequel/sequel.rb +5 -6
- data/lib/newrelic_sequel/version.rb +1 -1
- metadata +3 -3
@@ -68,16 +68,17 @@ module NewRelic
|
|
68
68
|
def self.record(duration, sql)
|
69
69
|
return unless NewRelic::Agent.is_execution_traced?
|
70
70
|
return unless operation = extract_operation_from_sql(sql)
|
71
|
+
|
71
72
|
NewRelic::Agent.instance.transaction_sampler.notice_sql(sql, nil, duration)
|
72
73
|
|
73
74
|
metrics = ["ActiveRecord/#{operation}", 'ActiveRecord/all']
|
74
75
|
metrics.each do |metric|
|
75
|
-
NewRelic::Agent.instance.
|
76
|
+
NewRelic::Agent.instance.stats_engine.get_stats_no_scope(metric).trace_call(duration)
|
76
77
|
end
|
77
78
|
end
|
78
79
|
|
79
80
|
def self.extract_operation_from_sql(sql)
|
80
|
-
case sql[0
|
81
|
+
case sql[0..15]
|
81
82
|
when /^\s*select/i then
|
82
83
|
'find'
|
83
84
|
when /^\s*(update|insert)/i then
|
@@ -120,18 +121,16 @@ DependencyDetection.defer do
|
|
120
121
|
defined?(::Sequel) && defined?(::Sequel::Database)
|
121
122
|
end
|
122
123
|
|
123
|
-
executes do
|
124
|
-
NewRelic::Agent.logger.debug 'Installing Sequel instrumentation'
|
125
|
-
end
|
126
|
-
|
127
124
|
executes do
|
128
125
|
if defined?(SequelRails)
|
126
|
+
NewRelic::Agent.logger.info 'Installing Sequel instrumentation (via sequel-rails)'
|
129
127
|
ActiveSupport::Notifications.subscribe("sql.sequel") do |*args|
|
130
128
|
event = ActiveSupport::Notifications::Event.new(*args)
|
131
129
|
duration = (event.end - event.time).to_f
|
132
130
|
::NewRelic::Agent::Instrumentation::SequelDurationRecorder.record(duration, event.payload[:sql])
|
133
131
|
end
|
134
132
|
else
|
133
|
+
NewRelic::Agent.logger.info 'Installing Sequel instrumentation'
|
135
134
|
::Sequel::Database.class_eval do
|
136
135
|
include ::NewRelic::Agent::Instrumentation::SequelInstrumentation
|
137
136
|
end
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: talentbox-newrelic-sequel
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.0.
|
5
|
+
version: 0.0.9
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- REA Group
|
@@ -93,7 +93,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
93
93
|
version: '0'
|
94
94
|
segments:
|
95
95
|
- 0
|
96
|
-
hash:
|
96
|
+
hash: 1756960604573439307
|
97
97
|
none: false
|
98
98
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
99
99
|
requirements:
|
@@ -102,7 +102,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
102
102
|
version: '0'
|
103
103
|
segments:
|
104
104
|
- 0
|
105
|
-
hash:
|
105
|
+
hash: 1756960604573439307
|
106
106
|
none: false
|
107
107
|
requirements: []
|
108
108
|
rubyforge_project:
|