callstacking-rails 0.1.5 → 0.1.6
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/lib/callstacking/rails/engine.rb +0 -1
- data/lib/callstacking/rails/instrument.rb +10 -3
- data/lib/callstacking/rails/settings.rb +2 -1
- data/lib/callstacking/rails/trace.rb +2 -2
- data/lib/callstacking/rails/traces_helper.rb +2 -0
- data/lib/callstacking/rails/version.rb +1 -1
- 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: ae9342c9f37c47dde2042523854b08bbc9c7f94ce3f4fec32b3ecde123b62603
         | 
| 4 | 
            +
              data.tar.gz: 500efff1f6650199ebea44d1964248758244caf8a0e1c0b40da98194d5797c22
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 330b4e4dbe4eb13c09708e661963e130d9f164389b1ab0911b90cd89b5c2d37de9e41dd8bfcae60f5cccfa64eb9f013ed34fc1ffd0248778df4f334cf4eea8ef
         | 
| 7 | 
            +
              data.tar.gz: 2e5219f83a3fdf775daf72d79708a49f7b76707b596508a424837b688a450d4d52c140456af6ec524ffbf6968e0e1db3d7a8b86b2619adc3a2450d0f3ce57ced
         | 
| @@ -22,7 +22,8 @@ module Callstacking | |
| 22 22 |  | 
| 23 23 | 
             
                    tmp_module = find_or_initialize_module
         | 
| 24 24 |  | 
| 25 | 
            -
                    return if tmp_module. | 
| 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. | 
| 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]. | 
| 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] | 
| 35 | 
            +
                                                          ::Rails.root, payload[:request]&.original_url,
         | 
| 36 36 | 
             
                                                          request_id, payload[:headers],
         | 
| 37 37 | 
             
                                                          payload[:params])
         | 
| 38 38 |  | 
    
        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. | 
| 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- | 
| 11 | 
            +
            date: 2023-01-11 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: rails
         |