raygun-apm 1.0.36-x86-linux → 1.0.37-x86-linux

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a4bd46f11481bbdf9ab7f425d9cc94574e3f646f06d82b2631e51b7f7965c7a7
4
- data.tar.gz: fd316115810e2202f2d694e744b91e495936c46d50cbc51cb35ceeda6322f126
3
+ metadata.gz: 95be2270d36276768331e4350bb5160add19c22aa72c30d0face7601981ae0ab
4
+ data.tar.gz: eba76916d731148090199c4c9b08b31ae3b94e28b4e37c17d785b942fdeac8ea
5
5
  SHA512:
6
- metadata.gz: 294b5401f38e81f33fc51b6f16bca8a0d092e8813797bde31a88dd3831d18d2992f0e0e7c2e78ed6dcf7bf0ba831ed6cdb49b578890043f99fad251ac6017d63
7
- data.tar.gz: 1e325b718b6d5e411d6db1cb64abbe90a2bddaa339efb49e6d488843abbaf83f5808c94e1758d802afe3ba3a8a763a457aefe86295e8baaef7796345e97cc76d
6
+ metadata.gz: 28d9ae186f9c3ddfb24d8aac2f42ad9d6952cd6b925a55582bbf85ad9a3ffe6bfdd100832ee1c85a5b9262d283fd1b676b3a4a7d5c92f6b6f18de0252fb82a36
7
+ data.tar.gz: 84626c03466b520b4408dcc35f06e505aae10e2acfdb7f97b91b254f2b93e655d18992ddfe6cea7a05e64cd10dbc4ca910e9d19d59618d292d46f262f9db1bc2
@@ -158,6 +158,8 @@ module Raygun
158
158
  OpenStruct
159
159
  Bundler
160
160
  Delegator
161
+ PrettyPrint
162
+ PP
161
163
  }
162
164
 
163
165
  HTTP_OUT = %w{
@@ -225,6 +227,10 @@ module Raygun
225
227
  +Net::HTTP::post_form
226
228
  }
227
229
 
230
+ QUERIES = %w{
231
+ +Raygun::Apm::Hooks::Redis::process
232
+ }
233
+
228
234
  def self.extend_with(list)
229
235
  self.extended_blacklist << list
230
236
  end
@@ -234,7 +240,7 @@ module Raygun
234
240
  end
235
241
 
236
242
  def self.resolve_entries
237
- DEFAULT_RUBY + PROFILER + HTTP_OUT + self.extended_blacklist.flatten
243
+ DEFAULT_RUBY + PROFILER + HTTP_OUT + QUERIES + self.extended_blacklist.flatten
238
244
  end
239
245
  end
240
246
  end
@@ -0,0 +1,46 @@
1
+ module Raygun
2
+ module Apm
3
+ module Hooks
4
+ module Redis
5
+ def process(commands)
6
+ result = nil
7
+ if tracer = Raygun::Apm::Tracer.instance
8
+ started = tracer.now
9
+ result = super
10
+ ended = tracer.now
11
+ event = raygun_apm_sql_event
12
+ event[:pid] = Process.pid
13
+ event[:query] = raygun_format_query(commands)
14
+ event[:provider] = "redis"
15
+ event[:host] = "#{host}:#{port}"
16
+ event[:database] = db.to_s
17
+ event[:duration] = ended - started
18
+ event[:timestamp] = started
19
+ event[:tid] = tracer.get_thread_id(Thread.current)
20
+ tracer.emit(event)
21
+ result
22
+ else
23
+ super
24
+ end
25
+ end
26
+
27
+ private
28
+ def raygun_format_query(commands)
29
+ commands.map do |command|
30
+ command.map(&:to_s).join(" ")
31
+ end.join(", ")
32
+ end
33
+
34
+ def raygun_apm_sql_event
35
+ @_raygun_apm_sql_event ||= Raygun::Apm::Event::Sql.new
36
+ end
37
+
38
+ def raygun_redis_call
39
+ yield
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
45
+
46
+ ::Redis::Client.prepend(Raygun::Apm::Hooks::Redis)
@@ -1,5 +1,5 @@
1
1
  module Raygun
2
2
  module Apm
3
- VERSION = "1.0.36"
3
+ VERSION = "1.0.37"
4
4
  end
5
5
  end
data/lib/raygun/apm.rb CHANGED
@@ -9,8 +9,3 @@ require "raygun/apm/config"
9
9
  require "raygun/apm/tracer"
10
10
  require "raygun/apm/event"
11
11
  require "raygun/apm/hooks/net_http"
12
-
13
- module Raygun
14
- module Apm
15
- end
16
- end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: raygun-apm
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.36
4
+ version: 1.0.37
5
5
  platform: x86-linux
6
6
  authors:
7
7
  - Raygun
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2020-05-10 00:00:00.000000000 Z
12
+ date: 2020-05-14 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: debase-ruby_core_source
@@ -213,6 +213,7 @@ files:
213
213
  - lib/raygun/apm/config.rb
214
214
  - lib/raygun/apm/event.rb
215
215
  - lib/raygun/apm/hooks/net_http.rb
216
+ - lib/raygun/apm/hooks/redis.rb
216
217
  - lib/raygun/apm/tracer.rb
217
218
  - lib/raygun/apm/version.rb
218
219
  - raygun-apm.gemspec