raygun-apm 1.1.10-x86-mingw32 → 1.1.11-x86-mingw32

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7cebf18aadb7694f565252acd8b0e03062dcca556ea62572d913deecb186dc5b
4
- data.tar.gz: 8692d8bd313bbbab40468116951448e39541255d177435b1192201dd1c54a512
3
+ metadata.gz: 8c4f6c06d3371aa09803ab2d19825ae7c8b7c6de27e2279d7f26538c07cd82df
4
+ data.tar.gz: 99ef5e803e116c15eaca0e87f5e706f38cbc75a6d8a8626a05670383b6f470de
5
5
  SHA512:
6
- metadata.gz: 7978f84c8623d25af49ade021464fe7774a438d877bff5ae4beeb9a46f472b1461ada8bcf7458f853382c1f75e2e2c489197a6133412d21b5538db06f6370c31
7
- data.tar.gz: 6e2ec2366dd86e3a3e49bdfae16247ae980d0e8ff4a1d2f46a5bd7ee7b8adfe0cee69736809ea52f38bc1c9339e378108b07ac941fb19b8782356832d8655827
6
+ metadata.gz: 36134af494891f6a92a91118a1cd07f6ccdddf022a3c912ee69e8286646f33fbf118625b712f79d99982864859c4ff019e3afc9d245a7c97540c7fd8ecf12926
7
+ data.tar.gz: 85dd97f12c9e7a8b94f8243b6fe32fa73c27fc2be4c04d81ef83e1b3eb07d092fa45aa974ed2bafa54cc0583a1d8e0f76e83b18fadad123a3cda634dbb01f064
Binary file
Binary file
Binary file
Binary file
@@ -70,6 +70,9 @@ module Raygun
70
70
  config_var 'PROTON_UDP_PORT', as: Integer, default: UDP_SINK_PORT
71
71
  config_var 'PROTON_TCP_HOST', as: String, default: TCP_SINK_HOST
72
72
  config_var 'PROTON_TCP_PORT', as: Integer, default: TCP_SINK_PORT
73
+ ## Conditional hooks
74
+ config_var 'PROTON_HOOK_REDIS', as: :boolean, default: 'True'
75
+ config_var 'PROTON_HOOK_INTERNALS', as: :boolean, default: 'True'
73
76
 
74
77
  def proton_udp_host
75
78
  if proton_use_multicast == 'True'
@@ -33,4 +33,4 @@ module Raygun
33
33
  end
34
34
  end
35
35
 
36
- Excon::Connection.prepend(Raygun::Apm::Hooks::Excon)
36
+ Raygun::Apm::Tracer.patch(Excon::Connection, Raygun::Apm::Hooks::Excon)
@@ -40,4 +40,4 @@ module Raygun
40
40
  end
41
41
  end
42
42
 
43
- HTTPClient.prepend(Raygun::Apm::Hooks::HTTPClient)
43
+ Raygun::Apm::Tracer.patch(HTTPClient, Raygun::Apm::Hooks::HTTPClient)
@@ -88,8 +88,8 @@ module Raygun
88
88
  end
89
89
  end
90
90
 
91
- Object.prepend Raygun::Apm::Hooks::Object
92
- IO.prepend Raygun::Apm::Hooks::IO
93
- Random.prepend Raygun::Apm::Hooks::Random
94
- Signal.prepend Raygun::Apm::Hooks::Signal
95
- Thread::Mutex.prepend Raygun::Apm::Hooks::Mutex
91
+ Raygun::Apm::Tracer.patch(Object, Raygun::Apm::Hooks::Object)
92
+ Raygun::Apm::Tracer.patch(IO, Raygun::Apm::Hooks::IO)
93
+ Raygun::Apm::Tracer.patch(Random, Raygun::Apm::Hooks::Random)
94
+ Raygun::Apm::Tracer.patch(Signal, Raygun::Apm::Hooks::Signal)
95
+ Raygun::Apm::Tracer.patch(Thread::Mutex, Raygun::Apm::Hooks::Mutex)
@@ -41,5 +41,5 @@ module Raygun
41
41
  end
42
42
 
43
43
  Mongo::Operation.constants.each do |operation|
44
- Mongo::Operation.const_get(operation).prepend(Raygun::Apm::Hooks::MongoDB) rescue nil
44
+ Raygun::Apm::Tracer.patch(Mongo::Operation.const_get(operation), Raygun::Apm::Hooks::MongoDB) rescue nil
45
45
  end
@@ -41,4 +41,4 @@ module Raygun
41
41
  end
42
42
  end
43
43
 
44
- ::Net::HTTP.prepend(Raygun::Apm::Hooks::Net::HTTP)
44
+ Raygun::Apm::Tracer.patch(::Net::HTTP, Raygun::Apm::Hooks::Net::HTTP)
@@ -43,4 +43,4 @@ module Raygun
43
43
  end
44
44
  end
45
45
 
46
- ::Redis::Client.prepend(Raygun::Apm::Hooks::Redis)
46
+ Raygun::Apm::Tracer.patch(::Redis::Client, Raygun::Apm::Hooks::Redis)
@@ -19,6 +19,10 @@ module Raygun
19
19
  def instance=(tracer)
20
20
  @__pids[Process.pid] = tracer
21
21
  end
22
+
23
+ def patch(concern, hook)
24
+ concern.prepend(hook) unless concern.ancestors.include?(hook)
25
+ end
22
26
  end
23
27
 
24
28
  attr_accessor :config
@@ -28,6 +32,7 @@ module Raygun
28
32
  initialize_blacklist
29
33
  register_known_library_paths
30
34
  run_agent_connectivity_diagnostics
35
+ require_hooks
31
36
  ObjectSpace.define_finalizer(self, proc{ disable_tracepoints })
32
37
  # Any fails here is kamikaze for the tracer
33
38
  rescue => e
@@ -105,6 +110,22 @@ module Raygun
105
110
  check = Raygun::Apm::Diagnostics.new
106
111
  check.verify_agent(self)
107
112
  end
113
+
114
+ def require_hooks
115
+ require "raygun/apm/hooks/internals" if @config.proton_hook_internals
116
+ require "raygun/apm/hooks/net_http"
117
+ # conditionally required - may not be bundled
118
+ conditional_hooks = %w(httpclient excon mongodb)
119
+ conditional_hooks.each do |hook|
120
+ begin
121
+ require "raygun/apm/hooks/#{hook}"
122
+ rescue LoadError
123
+ end
124
+ end
125
+ if @config.proton_hook_redis
126
+ require "raygun/apm/hooks/redis" if defined?(Redis::Client)
127
+ end
128
+ end
108
129
  end
109
130
  end
110
131
  end
@@ -1,6 +1,6 @@
1
1
  module Raygun
2
2
  module Apm
3
- VERSION = "1.1.10"
3
+ VERSION = "1.1.11"
4
4
  MINIMUM_AGENT_VERSION = "1.0.1190.0"
5
5
  end
6
6
  end
data/lib/raygun/apm.rb CHANGED
@@ -16,13 +16,3 @@ require "raygun/apm/blacklist/parser"
16
16
  require "raygun/apm/blacklist/translator"
17
17
  require "raygun/apm/tracer"
18
18
  require "raygun/apm/event"
19
- require "raygun/apm/hooks/internals"
20
- require "raygun/apm/hooks/net_http"
21
- # conditionally required - may not be bundled
22
- conditional_hooks = %w(httpclient excon mongodb)
23
- conditional_hooks.each do |hook|
24
- begin
25
- require "raygun/apm/hooks/#{hook}"
26
- rescue LoadError
27
- end
28
- end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: raygun-apm
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.10
4
+ version: 1.1.11
5
5
  platform: x86-mingw32
6
6
  authors:
7
7
  - Raygun Limited
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-01-24 00:00:00.000000000 Z
11
+ date: 2022-02-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: debase-ruby_core_source