raygun-apm 1.1.9-x64-mingw32 → 1.1.12-x64-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 +4 -4
- data/ext/raygun/extconf.rb +1 -0
- data/lib/raygun/2.5/raygun_ext.so +0 -0
- data/lib/raygun/2.6/raygun_ext.so +0 -0
- data/lib/raygun/2.7/raygun_ext.so +0 -0
- data/lib/raygun/3.0/raygun_ext.so +0 -0
- data/lib/raygun/apm/config.rb +3 -0
- data/lib/raygun/apm/hooks/excon.rb +1 -1
- data/lib/raygun/apm/hooks/httpclient.rb +1 -1
- data/lib/raygun/apm/hooks/internals.rb +5 -5
- data/lib/raygun/apm/hooks/mongodb.rb +1 -1
- data/lib/raygun/apm/hooks/net_http.rb +1 -1
- data/lib/raygun/apm/hooks/redis.rb +1 -1
- data/lib/raygun/apm/tracer.rb +27 -0
- data/lib/raygun/apm/version.rb +1 -1
- data/lib/raygun/apm.rb +0 -10
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7b9b73a6815ccdb15eeb3c74da524e5a92f43f4160053cb9cef8d447326bed1e
|
4
|
+
data.tar.gz: c6e10b0df35de1327a25d24ab350a54181116aeadcf6af9e616056f9d5478878
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: aa28ed43d148d965c778aba6319e93e357fb3d77e61fd7c5cd65d5def18c7360b661f4e104bdb32d7be2ebec4da0fe1ea586d377518f364390f88a6c365c7aa3
|
7
|
+
data.tar.gz: 87a041ecec5824f3336980f75a457c85cd32f4b2332752e6c83358c8ca1a69a441d065e17a2f457a112a414cb5b3c2d157e728eb0e563950ab2a724ff8462c00
|
data/ext/raygun/extconf.rb
CHANGED
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/lib/raygun/apm/config.rb
CHANGED
@@ -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'
|
@@ -88,8 +88,8 @@ module Raygun
|
|
88
88
|
end
|
89
89
|
end
|
90
90
|
|
91
|
-
Object
|
92
|
-
IO
|
93
|
-
Random
|
94
|
-
Signal
|
95
|
-
Thread::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)
|
44
|
+
Raygun::Apm::Tracer.patch(Mongo::Operation.const_get(operation), Raygun::Apm::Hooks::MongoDB) rescue nil
|
45
45
|
end
|
data/lib/raygun/apm/tracer.rb
CHANGED
@@ -4,8 +4,14 @@ require 'rbconfig'
|
|
4
4
|
module Raygun
|
5
5
|
module Apm
|
6
6
|
class Tracer
|
7
|
+
@__mutex = Mutex.new
|
8
|
+
|
7
9
|
@__pids ||= {}
|
8
10
|
class << self
|
11
|
+
def synchronize(&block)
|
12
|
+
@__mutex.synchronize { block.call }
|
13
|
+
end
|
14
|
+
|
9
15
|
def instance
|
10
16
|
@__pids[Process.pid]
|
11
17
|
end
|
@@ -13,6 +19,10 @@ module Raygun
|
|
13
19
|
def instance=(tracer)
|
14
20
|
@__pids[Process.pid] = tracer
|
15
21
|
end
|
22
|
+
|
23
|
+
def patch(concern, hook)
|
24
|
+
concern.prepend(hook) unless concern.ancestors.include?(hook)
|
25
|
+
end
|
16
26
|
end
|
17
27
|
|
18
28
|
attr_accessor :config
|
@@ -22,6 +32,7 @@ module Raygun
|
|
22
32
|
initialize_blacklist
|
23
33
|
register_known_library_paths
|
24
34
|
run_agent_connectivity_diagnostics
|
35
|
+
require_hooks
|
25
36
|
ObjectSpace.define_finalizer(self, proc{ disable_tracepoints })
|
26
37
|
# Any fails here is kamikaze for the tracer
|
27
38
|
rescue => e
|
@@ -99,6 +110,22 @@ module Raygun
|
|
99
110
|
check = Raygun::Apm::Diagnostics.new
|
100
111
|
check.verify_agent(self)
|
101
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
|
102
129
|
end
|
103
130
|
end
|
104
131
|
end
|
data/lib/raygun/apm/version.rb
CHANGED
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.
|
4
|
+
version: 1.1.12
|
5
5
|
platform: x64-mingw32
|
6
6
|
authors:
|
7
7
|
- Raygun Limited
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-03-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: debase-ruby_core_source
|