raygun-apm 1.0.37-x86-mingw32 → 1.0.42-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: 6ebd9cb75c38c0330d8e43fc14823dff284e3f2e3a2ff1a5c2f30fec3aee927a
4
- data.tar.gz: 9fd4724052237d4264381d4ff20317461e65ee46d6a5917fe558933152b0afcf
3
+ metadata.gz: d4806c0bbe480ae9d117e52718a84a5df256da8d7e94a11980a2de3f183568ea
4
+ data.tar.gz: b2163b29c7c91e1fe0dc613f7de75d900422f5b22f5ac9530414e6862169bb01
5
5
  SHA512:
6
- metadata.gz: a07e336052fe3414a380b390bcbc2a18a0fee3643b1fc7f5cc67a6319bc9caabb4951c867d7e0f2d656a0425a118d222ee43ede2f65a1d8a3dfbb7ec04029705
7
- data.tar.gz: 6fc2c0dce8a43d9c5378134df216119300e1cf455e5a3a1dce55abd811fee6e31129656a93b9149620a85b5b0faec8e78296cd86a7d51b0bcd38c66274922003
6
+ metadata.gz: f137c1d376896c3ce5ab22d537f6eb281ea08f01cd6be8b490517cb26c8f6d3558b0e53e0d0371eaaa4658ee8e931b6e5b17f43ff70774fe537d4469d64854b4
7
+ data.tar.gz: 48169ad519cd4ecbdc023441ebe4cd138950fcfd45d106e77bd5883a58b20ab0801ece631008e64eb94a941b4089603d40e05e2a8013857e3e067b4a3b6557d7
@@ -84,7 +84,6 @@ For standalone scripts, context start-end needs to be marked specifically and op
84
84
 
85
85
  tracer = Raygun::Apm::Tracer.new
86
86
  tracer.udp_sink!
87
- tracer.process_started
88
87
  tracer.start_trace
89
88
  Hello.new.rdoc
90
89
  tracer.end_trace
@@ -0,0 +1,7 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require "bundler/setup"
4
+ require "raygun/apm"
5
+
6
+ check = Raygun::Apm::Diagnostics.new
7
+ check.verify_agent
Binary file
Binary file
Binary file
@@ -6,6 +6,7 @@ rescue LoadError
6
6
  require "raygun/raygun_ext"
7
7
  end
8
8
  require "raygun/apm/config"
9
+ require "raygun/apm/diagnostics"
9
10
  require "raygun/apm/tracer"
10
11
  require "raygun/apm/event"
11
12
  require "raygun/apm/hooks/net_http"
@@ -49,9 +49,10 @@ module Raygun
49
49
  end
50
50
 
51
51
  # Initial constants for ProtonAgentTail.exe
52
- UDP_SINK_HOST = '127.0.0.1'
52
+ UDP_SINK_HOST = TCP_MANAGEMENT_HOST = '127.0.0.1'
53
53
  UDP_SINK_MULTICAST_HOST = '239.100.15.215'
54
54
  UDP_SINK_PORT = 2799
55
+ TCP_MANAGEMENT_PORT = 2790
55
56
 
56
57
  ## Enumerate all PROTON_ constants
57
58
  config_var 'PROTON_API_KEY', as: String, default: ''
@@ -0,0 +1,34 @@
1
+ require "socket"
2
+ require "json"
3
+
4
+ module Raygun
5
+ module Apm
6
+ class Diagnostics
7
+ AGENT_STATE_DOWN = "The Raygun APM Agent appears to not be running on the current host.\nIf not already installed, please consult https://raygun.com/documentation/product-guides/apm/agent/downloads/\nOtherwise refer to https://raygun.com/documentation/product-guides/apm/agent/installation/ for starting the Agent."
8
+ AGENT_STATE_UP_MISCONFIGURED = "The Raygun APM Agent is running, but misconfigured.\nThe API Key needs to be set through the Raygun_ApiKey environment variable.\nThe API key can be found under 'Application Settings' in the Raygun UI"
9
+ AGENT_STATE_UP_CONFIGURED = "The Raygun APM Agent is configured properly!"
10
+
11
+ def initialize(host: Apm::Config::TCP_MANAGEMENT_HOST, port: Apm::Config::TCP_MANAGEMENT_PORT)
12
+ @host = host
13
+ @port = port
14
+ end
15
+
16
+ def verify_agent
17
+ socket.write "GetAgentInfo"
18
+ response = JSON.parse(socket.gets)
19
+ if response['Status'] == 1
20
+ puts AGENT_STATE_UP_CONFIGURED
21
+ elsif response['Status'] == 0
22
+ puts AGENT_STATE_UP_MISCONFIGURED
23
+ end
24
+ rescue Errno::ECONNREFUSED
25
+ puts AGENT_STATE_DOWN
26
+ end
27
+
28
+ private
29
+ def socket
30
+ @socket ||= s = TCPSocket.new(@host, @port)
31
+ end
32
+ end
33
+ end
34
+ end
@@ -6,7 +6,7 @@ module Raygun
6
6
  end
7
7
  class ThreadStarted < Event
8
8
  def inspect
9
- super + " "
9
+ super + " parent_tid:#{self[:parent_tid]}"
10
10
  end
11
11
  end
12
12
  class Begin < Event
@@ -29,6 +29,11 @@ module Raygun
29
29
  super + " url:#{self[:url]} verb:#{self[:verb]} status:#{self[:status]} duration:#{self[:duration]}"
30
30
  end
31
31
  end
32
+ class BeginTransaction < Event
33
+ def inspect
34
+ super + " api_key:#{self[:api_key]} technology_type:#{self[:technology_type]} process_type:#{self[:process_type]}"
35
+ end
36
+ end
32
37
  end
33
38
  end
34
39
  end
@@ -1,4 +1,5 @@
1
1
  require 'raygun/apm/blacklist'
2
+ require 'rbconfig'
2
3
 
3
4
  module Raygun
4
5
  module Apm
@@ -31,7 +32,8 @@ module Raygun
31
32
  self.log_level = config.loglevel
32
33
  self.environment = config.environment
33
34
  self.api_key = config.proton_api_key
34
- self.register_libraries Bundler.load.specs.map(&:full_gem_path).sort
35
+ self.register_libraries Bundler.load.specs.map(&:full_gem_path).sort << RbConfig::CONFIG['rubylibdir']
36
+ agent_connectivity_diagnostics
35
37
  ObjectSpace.define_finalizer(self, proc{ disable_tracepoints })
36
38
  # Any fails here is kamikaze for the tracer
37
39
  rescue => e
@@ -72,6 +74,10 @@ module Raygun
72
74
  raise Raygun::Apm::FatalError, "Raygun APM UDP sink could not be initialized: #{e.message}"
73
75
  end
74
76
 
77
+ def agent_connectivity_diagnostics
78
+ check = Raygun::Apm::Diagnostics.new
79
+ check.verify_agent
80
+ end
75
81
  end
76
82
  end
77
83
  end
@@ -1,5 +1,5 @@
1
1
  module Raygun
2
2
  module Apm
3
- VERSION = "1.0.37"
3
+ VERSION = "1.0.42"
4
4
  end
5
5
  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.37
4
+ version: 1.0.42
5
5
  platform: x86-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-14 00:00:00.000000000 Z
12
+ date: 2020-06-04 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: debase-ruby_core_source
@@ -203,6 +203,7 @@ extra_rdoc_files: []
203
203
  files:
204
204
  - README.rdoc
205
205
  - bin/console
206
+ - bin/diagnostics
206
207
  - bin/setup
207
208
  - ext/raygun/extconf.rb
208
209
  - lib/raygun/2.5/raygun_ext.so
@@ -211,6 +212,7 @@ files:
211
212
  - lib/raygun/apm.rb
212
213
  - lib/raygun/apm/blacklist.rb
213
214
  - lib/raygun/apm/config.rb
215
+ - lib/raygun/apm/diagnostics.rb
214
216
  - lib/raygun/apm/event.rb
215
217
  - lib/raygun/apm/hooks/net_http.rb
216
218
  - lib/raygun/apm/hooks/redis.rb