callstacking-rails 0.1.5 → 0.1.6

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: 3397c14c7a14f028756a51f652b3c910974fe7f73f26669f309f7ace8d10a0b1
4
- data.tar.gz: be23e85bec36e314527a3bef6908812f4d5245ef1100ed6ddaa33d2cd80d6d6b
3
+ metadata.gz: ae9342c9f37c47dde2042523854b08bbc9c7f94ce3f4fec32b3ecde123b62603
4
+ data.tar.gz: 500efff1f6650199ebea44d1964248758244caf8a0e1c0b40da98194d5797c22
5
5
  SHA512:
6
- metadata.gz: 102bf82f29d0bcbc02440d9511a07673e26a6af5aa574135e2d393878422d76509648ef32a2abf029ec0c2627714f184baf95b82c21a6731c9278910e3a60a03
7
- data.tar.gz: '0588d83e51ecaac9a2e3b2c5cfb4d390609a02365adbda31d77882ee8ded2e1552b9d3c26dac4870b89da7202b0502cbb7fe1deb1f79ee52450f7f0159952f08'
6
+ metadata.gz: 330b4e4dbe4eb13c09708e661963e130d9f164389b1ab0911b90cd89b5c2d37de9e41dd8bfcae60f5cccfa64eb9f013ed34fc1ffd0248778df4f334cf4eea8ef
7
+ data.tar.gz: 2e5219f83a3fdf775daf72d79708a49f7b76707b596508a424837b688a450d4d52c140456af6ec524ffbf6968e0e1db3d7a8b86b2619adc3a2450d0f3ce57ced
@@ -27,7 +27,6 @@ module Callstacking
27
27
 
28
28
  initializer 'local_helper.action_controller' do
29
29
  ActiveSupport.on_load :action_controller do
30
- helper Callstacking::Rails::TracesHelper
31
30
  include Callstacking::Rails::TracesHelper
32
31
  end
33
32
 
@@ -22,7 +22,8 @@ module Callstacking
22
22
 
23
23
  tmp_module = find_or_initialize_module
24
24
 
25
- return if tmp_module.instance_methods.include?(method_name) ||
25
+ return if tmp_module.nil? ||
26
+ tmp_module.instance_methods.include?(method_name) ||
26
27
  tmp_module.singleton_methods.include?(method_name)
27
28
 
28
29
  tmp_module.define_method(method_name) do |*args, &block|
@@ -37,7 +38,7 @@ module Callstacking
37
38
  klass = tmp_module.instance_variable_get(:@klass)
38
39
 
39
40
  arguments = Callstacking::Rails::Instrument.arguments_for(method(__method__).super_method, args)
40
-
41
+
41
42
  spans.call_entry(klass, method_name, arguments, p || path, l || line_no)
42
43
  return_val = super(*args, &block)
43
44
  spans.call_return(klass, method_name, p || path, l || line_no, return_val)
@@ -47,6 +48,8 @@ module Callstacking
47
48
  end
48
49
 
49
50
  def find_or_initialize_module
51
+ return if klass&.name == nil
52
+
50
53
  module_name = "#{klass.name.gsub('::', '')}Span"
51
54
  module_index = klass.ancestors.map(&:to_s).index(module_name)
52
55
 
@@ -74,10 +77,14 @@ module Callstacking
74
77
  param_names = m.parameters&.map(&:last)
75
78
  return {} if param_names.nil?
76
79
 
77
- param_names.map.with_index do |param, index|
80
+ h = param_names.map.with_index do |param, index|
78
81
  next if [:&, :*, :**].include?(param)
79
82
  [param, args[index]]
80
83
  end.compact.to_h
84
+
85
+ filter = ::Rails.application.config.filter_parameters
86
+ f = ActiveSupport::ParameterFilter.new filter
87
+ f.filter h
81
88
  end
82
89
 
83
90
  private
@@ -23,7 +23,7 @@ module Callstacking
23
23
  end
24
24
 
25
25
  def auth_token?
26
- auth_token.present?
26
+ !auth_token.nil?
27
27
  end
28
28
 
29
29
  def write_settings(new_settings)
@@ -31,6 +31,7 @@ module Callstacking
31
31
  end
32
32
 
33
33
  def enabled?
34
+ return false if settings.nil?
34
35
  settings[:enabled]
35
36
  end
36
37
 
@@ -27,12 +27,12 @@ module Callstacking
27
27
  trace_id = nil
28
28
 
29
29
  ActiveSupport::Notifications.subscribe("start_processing.action_controller") do |name, start, finish, id, payload|
30
- request_id = payload[:request].request_id
30
+ request_id = payload[:request]&.request_id || SecureRandom.uuid
31
31
  Callstacking::Rails::Trace.current_request_id = request_id
32
32
 
33
33
  trace_id, _interval = client.create(payload[:method], payload[:controller],
34
34
  payload[:action], payload[:format],
35
- ::Rails.root, payload[:request].original_url,
35
+ ::Rails.root, payload[:request]&.original_url,
36
36
  request_id, payload[:headers],
37
37
  payload[:params])
38
38
 
@@ -46,6 +46,8 @@ module Callstacking
46
46
  end
47
47
 
48
48
  def inject_hud
49
+ return unless enabled?
50
+
49
51
  response.body = response.body.sub(/<\/body>/i, "#{hud}</body>")
50
52
  end
51
53
  end
@@ -1,5 +1,5 @@
1
1
  module Callstacking
2
2
  module Rails
3
- VERSION = "0.1.5"
3
+ VERSION = "0.1.6"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: callstacking-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.5
4
+ version: 0.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jim Jones
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-01-10 00:00:00.000000000 Z
11
+ date: 2023-01-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails