appsignal 0.12.beta.6 → 0.12.beta.7

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.
@@ -12,11 +12,10 @@ module Appsignal
12
12
  NUMERIC_DATA = /\b\d+\b/.freeze
13
13
  SANITIZED_VALUE = '\1?\2'.freeze
14
14
 
15
- attr_reader :adapter_uses_double_quoted_table_names, :adapter_uses_prepared_statements
15
+ attr_reader :adapter_uses_double_quoted_table_names
16
16
 
17
17
  def initialize
18
18
  @connection_config = connection_config
19
- @adapter_uses_prepared_statements = adapter_uses_prepared_statements?
20
19
  @adapter_uses_double_quoted_table_names = adapter_uses_double_quoted_table_names?
21
20
  rescue ::ActiveRecord::ConnectionNotEstablished
22
21
  Appsignal::EventFormatter.unregister('sql.active_record', self.class)
@@ -25,22 +24,18 @@ module Appsignal
25
24
 
26
25
  def format(payload)
27
26
  return nil if schema_query?(payload) || !payload[:sql]
28
- if adapter_uses_prepared_statements
29
- [payload[:name], payload[:sql]]
27
+ sql_string = payload[:sql].dup
28
+ if adapter_uses_double_quoted_table_names
29
+ sql_string.gsub!(SINGLE_QUOTE, SANITIZED_VALUE)
30
+ sql_string.gsub!(SINGLE_QUOTED_DATA, SANITIZED_VALUE)
30
31
  else
31
- sql_string = payload[:sql].dup
32
- if adapter_uses_double_quoted_table_names
33
- sql_string.gsub!(SINGLE_QUOTE, SANITIZED_VALUE)
34
- sql_string.gsub!(SINGLE_QUOTED_DATA, SANITIZED_VALUE)
35
- else
36
- sql_string.gsub!(SINGLE_QUOTE, SANITIZED_VALUE)
37
- sql_string.gsub!(DOUBLE_QUOTE, SANITIZED_VALUE)
38
- sql_string.gsub!(QUOTED_DATA, SANITIZED_VALUE)
39
- end
40
- sql_string.gsub!(IN_ARRAY, SANITIZED_VALUE)
41
- sql_string.gsub!(NUMERIC_DATA, SANITIZED_VALUE)
42
- [payload[:name], sql_string]
32
+ sql_string.gsub!(SINGLE_QUOTE, SANITIZED_VALUE)
33
+ sql_string.gsub!(DOUBLE_QUOTE, SANITIZED_VALUE)
34
+ sql_string.gsub!(QUOTED_DATA, SANITIZED_VALUE)
43
35
  end
36
+ sql_string.gsub!(IN_ARRAY, SANITIZED_VALUE)
37
+ sql_string.gsub!(NUMERIC_DATA, SANITIZED_VALUE)
38
+ [payload[:name], sql_string]
44
39
  end
45
40
 
46
41
  protected
@@ -62,12 +57,6 @@ module Appsignal
62
57
  adapter = @connection_config[:adapter]
63
58
  adapter =~ /postgres/ || adapter =~ /sqlite/
64
59
  end
65
-
66
- def adapter_uses_prepared_statements?
67
- return false unless adapter_uses_double_quoted_table_names?
68
- return true if @connection_config[:prepared_statements].nil?
69
- @connection_config[:prepared_statements]
70
- end
71
60
  end
72
61
  end
73
62
  end
@@ -1,4 +1,4 @@
1
1
  module Appsignal
2
- VERSION = '0.12.beta.6'
2
+ VERSION = '0.12.beta.7'
3
3
  AGENT_VERSION = 'fc00f64'
4
4
  end
@@ -129,14 +129,6 @@ if rails_present?
129
129
  end
130
130
  end
131
131
 
132
- context "skip sanitization for prepared statements" do
133
- let(:connection_config) { {:adapter => 'postgresql'} }
134
-
135
- let(:sql) { 'SELECT "table".* FROM "table" WHERE "id"=$1' }
136
-
137
- it { should == ['Model load', 'SELECT "table".* FROM "table" WHERE "id"=$1'] }
138
- end
139
-
140
132
  context "return nil for schema queries" do
141
133
  let(:name) { 'SCHEMA' }
142
134
  let(:sql) { 'SET client_min_messages TO 22' }
@@ -193,28 +185,6 @@ if rails_present?
193
185
 
194
186
  it { should be_true }
195
187
  end
196
-
197
- describe "adapter_uses_prepared_statements" do
198
- subject { formatter.adapter_uses_prepared_statements }
199
-
200
- context "when using mysql" do
201
- let(:connection_config) { {:adapter => 'mysql'} }
202
-
203
- it { should be_false }
204
- end
205
-
206
- context "when using postgresql" do
207
- let(:connection_config) { {:adapter => 'postgresql'} }
208
-
209
- it { should be_true }
210
- end
211
-
212
- context "when using postgresql and prepared statements is disabled" do
213
- let(:connection_config) { {:adapter => 'postgresql', :prepared_statements => false} }
214
-
215
- it { should be_false }
216
- end
217
- end
218
188
  end
219
189
  end
220
190
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: appsignal
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.beta.6
4
+ version: 0.12.beta.7
5
5
  prerelease: 5
6
6
  platform: ruby
7
7
  authors: