raygun-apm-rails 1.0.7 → 1.0.12

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: 84b197a1c66acefb49f17429b45a1e05b8e1dc77c6ad83fc3e8d3e32710ce751
4
- data.tar.gz: 00ac7b4a94ac58162ac2c7b8e240512fda645c685319217acb05356cd7e3df87
3
+ metadata.gz: b809f73931f3e372c8a33c6f00ee240e690dd754422b8d90e825c13e364c8f43
4
+ data.tar.gz: 0c7ae3fbca4daf6bc547dce1d5e6c4eacf7702392fc64395bbdfcd1324503a2c
5
5
  SHA512:
6
- metadata.gz: 2056ad6441488db1e3f03927b47e636419fa260ead9d46fe8d6dca15c3852b4cc02327c5114fd9ec74cd82116f18aa1a89426b2815c002a46f68f69e4d768e7f
7
- data.tar.gz: 78b0491a8b7a86a27fb114de29104cfeb7b3847f4ed955286e7494b8fdfd9e64d0acbc293e8acb6c3ef55d629595832a76f3652e2cf43bd1b6eb37d3b4696cee
6
+ metadata.gz: 4d4034d8d1226046c88511a428431283ce6792816d00db5f21801c4880ed0bd76f8985925500e8f39526090e21dbf733dcbeb74beb9c0f0fecc0f8573b961977
7
+ data.tar.gz: b011dbda620fb61c43caf495bff72bfb68d4c8fede30cd39e5a96013e4de98b2dd4d49293e7ec541f8ddcb4541e3d5bb66771e0fde5d3e63a46f840786f16d2b
@@ -58,6 +58,8 @@ module Raygun
58
58
  PG
59
59
  EnabledModule
60
60
  ConnectionPool
61
+ CoffeeScript
62
+ ApplicationRecord
61
63
  +Raygun::Apm::Rails::Middleware::Ruby_APM_profiler_trace
62
64
  }
63
65
  end
@@ -4,6 +4,17 @@ module Raygun
4
4
  class Middleware
5
5
  def initialize(app)
6
6
  @app = app
7
+ @tracer_initialized = nil
8
+ end
9
+
10
+ def call(env)
11
+ @status, @headers, @response = instrument(env)
12
+ [@status, @headers, @response]
13
+ end
14
+
15
+ private
16
+
17
+ def initialize_tracer
7
18
  @tracer = Raygun::Apm::Tracer.new
8
19
  @tracer.udp_sink!
9
20
  @tracer.process_started
@@ -15,19 +26,17 @@ module Raygun
15
26
  @sql_subscriber = ActiveSupport::Notifications.subscribe('sql.active_record') do |*args|
16
27
  sql_handler(args)
17
28
  end
18
-
29
+
30
+ GC.stress = true if ENV['RAYGUN_STRESS_GC']
31
+
19
32
  # If any fatal errors on init, shutdown the tracer
20
33
  rescue Raygun::Apm::FatalError => e
21
34
  raygun_shutdown_handler(e)
22
35
  end
23
36
 
24
- def call(env)
25
- @status, @headers, @response = instrument(env)
26
- [@status, @headers, @response]
27
- end
28
-
29
37
  def instrument(env)
30
38
  res = nil
39
+ @tracer_initialized ||= initialize_tracer
31
40
  # Can be nil if we had a fatal error
32
41
  if @tracer
33
42
  Thread.current.thread_variable_set(:_raygun_apm_tracer, @tracer)
@@ -47,8 +56,6 @@ module Raygun
47
56
  ActiveSupport::Notifications.unsubscribe(@http_in_subscriber)
48
57
  ActiveSupport::Notifications.unsubscribe(@sql_subscriber)
49
58
  warn "[Raygun APM] notification hooks unsubscribed"
50
- # Shutdown the tracepoints if enabled to reduce any overhead and stall emission
51
- @tracer.stop_tracepoints
52
59
  # Let the GC clean up the sink thread through the finalizer below
53
60
  @tracer = nil
54
61
  Thread.current.thread_variable_set(:_raygun_apm_tracer, nil)
@@ -1,7 +1,7 @@
1
1
  module Raygun
2
2
  module Apm
3
3
  module Rails
4
- VERSION = "1.0.7"
4
+ VERSION = "1.0.12"
5
5
  end
6
6
  end
7
7
  end
@@ -20,7 +20,7 @@ Gem::Specification.new do |spec|
20
20
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
21
21
  spec.require_paths = ["lib"]
22
22
 
23
- spec.add_dependency "raygun-apm", "~> 1.0.3"
23
+ spec.add_dependency "raygun-apm", "~> 1.0.15"
24
24
  spec.add_development_dependency "bundler", "~> 1.17"
25
25
  spec.add_development_dependency "rake", "~> 10.0"
26
26
  spec.add_development_dependency "minitest", "~> 5.0"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: raygun-apm-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.7
4
+ version: 1.0.12
5
5
  platform: ruby
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-02-27 00:00:00.000000000 Z
12
+ date: 2020-03-03 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: raygun-apm
@@ -17,14 +17,14 @@ dependencies:
17
17
  requirements:
18
18
  - - "~>"
19
19
  - !ruby/object:Gem::Version
20
- version: 1.0.3
20
+ version: 1.0.15
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
25
  - - "~>"
26
26
  - !ruby/object:Gem::Version
27
- version: 1.0.3
27
+ version: 1.0.15
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: bundler
30
30
  requirement: !ruby/object:Gem::Requirement