raygun-apm 1.0.36-universal-darwin → 1.0.37-universal-darwin

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: 3af89fec48ec5f0bfef06f395cd59da8ae5e96d449c9ed6eaeded21ac46561b6
4
- data.tar.gz: 65a3e4ffe65f7e2a2c8c7f1e71afdebfd71f1031c822d313efbb0a5de3d4ecc5
3
+ metadata.gz: a7cffa194cc63157ce18e080f96af2a638e28b0dd3440ad39655d71db6e1027b
4
+ data.tar.gz: 6d528ee53be507dddce4a5b7e11ed6b8048ddbee2451e286abda851bf80fa269
5
5
  SHA512:
6
- metadata.gz: e521541211151cf48f29247f1b210d661c0cccd1e6c6020b548d4c5b2f8c786a723e8c843751322f8c3a71f73ba2198f4e402402dbe6986a68f7afebfbafe7d1
7
- data.tar.gz: 14db04ec0fc66a5902e0fa7d1c0d7f24c57ae18ecaa36d416dafe79ec46e2cb1f02272ac53bd218f5fe914f84bf8967dd641e42d08b5cdcb712e347888d8ba06
6
+ metadata.gz: 7e217d216d2c0f3e008b7e123ef55b83a343de993c21caa6e28f7e7ec32fbd5ab0cc2117c41e5bec94d8da8ef2b598003a4712c6b1e891a920e44e6fa02391f3
7
+ data.tar.gz: c116ba94b6335ad1fbbf2f430e9b2754d290a5b6c8dfeb595600818e4542cae1f22d2c2f96971dda7e880c9b492045c3fe79ccbcb4efb4a750f42ec965c43251
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: universal-darwin
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-11 00:00:00.000000000 Z
12
+ date: 2020-05-16 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