raygun-apm 1.0.36-x64-mingw32 → 1.0.37-x64-mingw32

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: c8bad46217ac2dcc886f516eb286d15968f6b7f35830b15d3ab9c147ccf72ddc
4
- data.tar.gz: d74e09d6827200456c62b3e7da44d9637f5e37fe7b8e56544045a7c4b52972ef
3
+ metadata.gz: 3e87d310492e8b8624ba92a37b1910f90974d429434e326b6dbe7a00449ff54f
4
+ data.tar.gz: 21f29a484274584cf98cfac4aa54a323ad4fe28a6b778d8baa6c3b6ab7b5ac41
5
5
  SHA512:
6
- metadata.gz: e3421b7b2056f555f4c9d47ed022b95aab40465da465442a4ec3a6deb12131741d582c6f419ac0149db61625e1b07f46b548039f5f5f9bcad16b56dc7a7b11e4
7
- data.tar.gz: 421e186b0ce8cfb7854b132b58ee39dd9015553250a64cb24104dd2119432c806aab37b0a1ca2a836406aabb8200fa2724d0ee002dc616da0eb9ff837e0b3977
6
+ metadata.gz: 4bde866abb219958148f208cfee6d0bd5e22a283b66c86508d0d4e05aa8c0f15cf157571ff26f23fb5a73062623ef023fc3743f6b45669c9ab2a3ee8f941f6f5
7
+ data.tar.gz: be3edcf358cbf2efc7dea2230c948a060260f8c68aade3acd76fc36ea7d4a2a64cc441701417e29c7c32cd48326d283106b7e9417890f133fcb593989ad5ca33
Binary file
Binary file
Binary file
@@ -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: x64-mingw32
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