netuitive_rails_agent 1.0.4 → 1.2.0

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
- SHA1:
3
- metadata.gz: de1f11bcfe4f7aeb12a5a2f22745eadaeed5431e
4
- data.tar.gz: 846af5ccbb8f70a198cdcef530345c0d359e8d12
2
+ SHA256:
3
+ metadata.gz: ee90f352cfeb37d1b2c7f8f12f97afd419505c3cb05ca1526b4db7688d6b4dbc
4
+ data.tar.gz: 68bd86e6990cd49c0a2fab3c9133497d861f61a24718d86f644ff2e48de088e0
5
5
  SHA512:
6
- metadata.gz: 26736f7dd7b2aa8bedbd4518f0330484cdf5fe699d8445857d6174cd1cab1e281ae840780d98b8367dcf62495c20cde8171d447c53ddc4a7663379ab1a637e21
7
- data.tar.gz: 10e99349e652f6a6f1ee66ba2d3666e85267911f04f5220a163cf0e5fd4c953f11fd23431b125c03e774be0beb93693e0f1b91a0a56be5cd06f71309326ff552
6
+ metadata.gz: 767059630df4d7030605a6daffd7e8e64b4b7d6c99e93af94e06e1e29eda008e7ae630e2f7d13cf8a9fb6df3d926a720ab263871c2f6ce7dc0771a7ca977e594
7
+ data.tar.gz: dbd849d8dbf06823d1768266f3aefc701f784db680530f34a99161fd798fe646fa050aaac23d4c242b109d5f388ad37ccc6487cbb27a789b1f8480e6bff91973
@@ -26,6 +26,9 @@ sidekiqEnabled: false #NETUITIVE_RAILS_SIDEKIQ_ENABLED toggle for collection of
26
26
  sendErrorEvents: false #NETUITIVE_RAILS_SEND_ERROR_EVENTS toggle for sending exceptions to netuitived for export as external events.
27
27
 
28
28
  #feature configs
29
+ actionControllerWhitelist: .* #NETUITIVE_RAILS_ACTION_CONTROLLER_WHITELIST this is required to filter out action controller metrics
30
+ #Example: ^Rails::WelcomeController$
31
+ #The whitelist needs to be valid RegEx
29
32
  queueTimeUnits: 1 #NETUITIVE_RAILS_QUEUE_TIME_UNITS this is the divisor required to get the queue time metric into seconds. examples: seconds: 1, milliseconds: 1000, microseconds: 1000000.
30
33
  ignoredErrors: #NETUITIVE_RAILS_IGNORED_ERRORS list of exceptions to ignore. should be provided in the following yaml format:
31
34
  #ignoredErrors:
@@ -49,17 +49,20 @@ module NetuitiveRailsAgent
49
49
  event = ActiveSupport::Notifications::Event.new(*args)
50
50
  controller = event.payload[:controller].to_s
51
51
  action = event.payload[:action].to_s
52
- interaction.add_sample("action_controller.#{controller}.#{action}.request.total_duration", event.duration)
53
- interaction.add_sample("action_controller.#{controller}.#{action}.request.query_time", event.payload[:db_runtime])
54
- interaction.add_sample("action_controller.#{controller}.#{action}.request.view_time", event.payload[:view_runtime])
55
- interaction.add_sample("action_controller.#{controller}.request.total_duration", event.duration)
56
- interaction.add_sample("action_controller.#{controller}.request.query_time", event.payload[:db_runtime])
57
- interaction.add_sample("action_controller.#{controller}.request.view_time", event.payload[:view_runtime])
52
+ ac_whitelist_string = NetuitiveRailsAgent::ConfigManager.action_controller_whitelist
53
+ if controller =~ /#{ac_whitelist_string}/
54
+ interaction.add_sample("action_controller.#{controller}.#{action}.request.total_duration", event.duration)
55
+ interaction.add_sample("action_controller.#{controller}.#{action}.request.query_time", event.payload[:db_runtime])
56
+ interaction.add_sample("action_controller.#{controller}.#{action}.request.view_time", event.payload[:view_runtime])
57
+ interaction.add_sample("action_controller.#{controller}.request.total_duration", event.duration)
58
+ interaction.add_sample("action_controller.#{controller}.request.query_time", event.payload[:db_runtime])
59
+ interaction.add_sample("action_controller.#{controller}.request.view_time", event.payload[:view_runtime])
60
+ interaction.aggregate_metric("action_controller.#{controller}.#{action}.total_requests", 1)
61
+ interaction.aggregate_metric("action_controller.#{controller}.total_requests", 1)
62
+ end
58
63
  interaction.add_sample('action_controller.request.total_duration', event.duration)
59
64
  interaction.add_sample('action_controller.request.query_time', event.payload[:db_runtime])
60
65
  interaction.add_sample('action_controller.request.view_time', event.payload[:view_runtime])
61
- interaction.aggregate_metric("action_controller.#{controller}.#{action}.total_requests", 1)
62
- interaction.aggregate_metric("action_controller.#{controller}.total_requests", 1)
63
66
  interaction.aggregate_metric('action_controller.total_requests', 1)
64
67
  end
65
68
  end
@@ -29,6 +29,8 @@ module NetuitiveRailsAgent
29
29
 
30
30
  attr_accessor :object_space_enabled
31
31
 
32
+ attr_accessor :action_controller_whitelist
33
+
32
34
  attr_accessor :data
33
35
 
34
36
  def property(name, var, default = nil)
@@ -101,6 +103,7 @@ module NetuitiveRailsAgent
101
103
  @action_errors_enabled = boolean_property('actionErrorsEnabled', 'NETUITIVE_RAILS_ACTION_ERRORS_ENABLED')
102
104
  @gc_enabled = boolean_property('gcEnabled', 'NETUITIVE_RAILS_GC_ENABLED')
103
105
  @object_space_enabled = boolean_property('objectSpaceEnabled', 'NETUITIVE_RAILS_OBJECT_SPACE_ENABLED')
106
+ @action_controller_whitelist = property('actionControllerWhitelist', 'NETUITIVE_RAILS_ACTION_CONTROLLER_WHITELIST')
104
107
 
105
108
  NetuitiveRailsAgent::NetuitiveLogger.log.debug "read config file. Results:
106
109
  debugLevel: #{debug_level_string},
@@ -117,7 +120,8 @@ module NetuitiveRailsAgent
117
120
  request_wrapper_enabled: #{request_wrapper_enabled},
118
121
  action_errors_enabled: #{action_errors_enabled},
119
122
  gc_enabled: #{gc_enabled},
120
- object_space_enabled: #{object_space_enabled}"
123
+ object_space_enabled: #{object_space_enabled}
124
+ action_controller_whitelist: #{action_controller_whitelist}"
121
125
  end
122
126
  end
123
127
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: netuitive_rails_agent
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.4
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - John King
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-06-23 00:00:00.000000000 Z
11
+ date: 2018-05-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: netuitive_ruby_api
@@ -66,7 +66,6 @@ files:
66
66
  - lib/netuitive_rails_agent/request_data.rb
67
67
  - lib/netuitive_rails_agent/scheduler.rb
68
68
  - lib/netuitive_rails_agent/sidekiq.rb
69
- - log/netuitive.log
70
69
  homepage: http://rubygems.org/gems/netuitive_rails_agent
71
70
  licenses:
72
71
  - Apache-2.0
@@ -87,7 +86,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
87
86
  version: '0'
88
87
  requirements: []
89
88
  rubyforge_project:
90
- rubygems_version: 2.4.8
89
+ rubygems_version: 2.7.6
91
90
  signing_key:
92
91
  specification_version: 4
93
92
  summary: Rails metrics for Netuitive's API
File without changes