newrelic_rpm 8.16.0 → 9.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (243) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/.rubocop.yml +3 -41
  4. data/.rubocop_todo.yml +13 -14
  5. data/.simplecov +1 -1
  6. data/CHANGELOG.md +184 -0
  7. data/CONTRIBUTING.md +1 -1
  8. data/Gemfile +1 -1
  9. data/Guardfile +7 -7
  10. data/README.md +3 -2
  11. data/Rakefile +8 -8
  12. data/Thorfile +1 -1
  13. data/bin/nrdebug +36 -36
  14. data/init.rb +1 -1
  15. data/lib/new_relic/agent/agent.rb +3 -16
  16. data/lib/new_relic/agent/agent_helpers/connect.rb +5 -10
  17. data/lib/new_relic/agent/agent_helpers/harvest.rb +4 -4
  18. data/lib/new_relic/agent/agent_helpers/shutdown.rb +5 -5
  19. data/lib/new_relic/agent/agent_helpers/special_startup.rb +3 -4
  20. data/lib/new_relic/agent/agent_helpers/start_worker_thread.rb +47 -39
  21. data/lib/new_relic/agent/agent_helpers/startup.rb +13 -13
  22. data/lib/new_relic/agent/agent_helpers/transmit.rb +6 -6
  23. data/lib/new_relic/agent/agent_logger.rb +9 -9
  24. data/lib/new_relic/agent/attribute_filter.rb +2 -4
  25. data/lib/new_relic/agent/attribute_processing.rb +2 -2
  26. data/lib/new_relic/agent/audit_logger.rb +5 -5
  27. data/lib/new_relic/agent/autostart.rb +1 -1
  28. data/lib/new_relic/agent/commands/agent_command.rb +2 -2
  29. data/lib/new_relic/agent/commands/agent_command_router.rb +5 -4
  30. data/lib/new_relic/agent/commands/thread_profiler_session.rb +8 -8
  31. data/lib/new_relic/agent/configuration/default_source.rb +155 -530
  32. data/lib/new_relic/agent/configuration/environment_source.rb +2 -2
  33. data/lib/new_relic/agent/configuration/high_security_source.rb +3 -5
  34. data/lib/new_relic/agent/configuration/manager.rb +2 -2
  35. data/lib/new_relic/agent/configuration/security_policy_source.rb +10 -26
  36. data/lib/new_relic/agent/configuration/server_source.rb +24 -24
  37. data/lib/new_relic/agent/configuration/yaml_source.rb +4 -4
  38. data/lib/new_relic/agent/connect/request_builder.rb +1 -1
  39. data/lib/new_relic/agent/connect/response_handler.rb +1 -1
  40. data/lib/new_relic/agent/custom_event_aggregator.rb +4 -4
  41. data/lib/new_relic/agent/database/explain_plan_helpers.rb +1 -1
  42. data/lib/new_relic/agent/database/obfuscation_helpers.rb +2 -2
  43. data/lib/new_relic/agent/database/obfuscator.rb +2 -2
  44. data/lib/new_relic/agent/database.rb +4 -18
  45. data/lib/new_relic/agent/datastores/metric_helper.rb +5 -5
  46. data/lib/new_relic/agent/datastores/mongo/metric_translator.rb +11 -11
  47. data/lib/new_relic/agent/datastores/redis.rb +6 -6
  48. data/lib/new_relic/agent/distributed_tracing/cross_app_tracing.rb +8 -10
  49. data/lib/new_relic/agent/distributed_tracing/distributed_trace_attributes.rb +10 -10
  50. data/lib/new_relic/agent/distributed_tracing/distributed_trace_metrics.rb +7 -7
  51. data/lib/new_relic/agent/distributed_tracing/distributed_trace_payload.rb +1 -1
  52. data/lib/new_relic/agent/distributed_tracing/distributed_trace_transport_type.rb +6 -6
  53. data/lib/new_relic/agent/distributed_tracing/trace_context.rb +7 -7
  54. data/lib/new_relic/agent/distributed_tracing/trace_context_payload.rb +4 -4
  55. data/lib/new_relic/agent/distributed_tracing.rb +5 -5
  56. data/lib/new_relic/agent/error_collector.rb +36 -8
  57. data/lib/new_relic/agent/error_filter.rb +5 -5
  58. data/lib/new_relic/agent/error_trace_aggregator.rb +5 -4
  59. data/lib/new_relic/agent/event_loop.rb +3 -3
  60. data/lib/new_relic/agent/external.rb +1 -1
  61. data/lib/new_relic/agent/harvester.rb +1 -3
  62. data/lib/new_relic/agent/heap.rb +2 -1
  63. data/lib/new_relic/agent/hostname.rb +1 -1
  64. data/lib/new_relic/agent/http_clients/abstract.rb +9 -21
  65. data/lib/new_relic/agent/http_clients/curb_wrappers.rb +7 -3
  66. data/lib/new_relic/agent/http_clients/excon_wrappers.rb +7 -5
  67. data/lib/new_relic/agent/http_clients/http_rb_wrappers.rb +4 -0
  68. data/lib/new_relic/agent/http_clients/httpclient_wrappers.rb +6 -2
  69. data/lib/new_relic/agent/http_clients/net_http_wrappers.rb +5 -1
  70. data/lib/new_relic/agent/http_clients/typhoeus_wrappers.rb +8 -5
  71. data/lib/new_relic/agent/http_clients/uri_util.rb +2 -2
  72. data/lib/new_relic/agent/instrumentation/action_controller_other_subscriber.rb +5 -2
  73. data/lib/new_relic/agent/instrumentation/action_controller_subscriber.rb +3 -2
  74. data/lib/new_relic/agent/instrumentation/action_view_subscriber.rb +3 -3
  75. data/lib/new_relic/agent/instrumentation/active_job.rb +2 -2
  76. data/lib/new_relic/agent/instrumentation/active_record.rb +3 -2
  77. data/lib/new_relic/agent/instrumentation/active_record_helper.rb +38 -35
  78. data/lib/new_relic/agent/instrumentation/active_record_notifications.rb +3 -3
  79. data/lib/new_relic/agent/instrumentation/active_record_prepend.rb +2 -2
  80. data/lib/new_relic/agent/instrumentation/active_record_subscriber.rb +3 -2
  81. data/lib/new_relic/agent/instrumentation/bunny/instrumentation.rb +3 -3
  82. data/lib/new_relic/agent/instrumentation/controller_instrumentation.rb +6 -4
  83. data/lib/new_relic/agent/instrumentation/curb/chain.rb +1 -1
  84. data/lib/new_relic/agent/instrumentation/curb/instrumentation.rb +5 -5
  85. data/lib/new_relic/agent/instrumentation/curb.rb +1 -1
  86. data/lib/new_relic/agent/instrumentation/custom_events_subscriber.rb +2 -1
  87. data/lib/new_relic/agent/instrumentation/delayed_job/instrumentation.rb +1 -1
  88. data/lib/new_relic/agent/instrumentation/delayed_job_instrumentation.rb +2 -1
  89. data/lib/new_relic/agent/instrumentation/elasticsearch/chain.rb +1 -1
  90. data/lib/new_relic/agent/instrumentation/elasticsearch/instrumentation.rb +3 -3
  91. data/lib/new_relic/agent/instrumentation/elasticsearch.rb +1 -1
  92. data/lib/new_relic/agent/instrumentation/excon/middleware.rb +2 -1
  93. data/lib/new_relic/agent/instrumentation/excon.rb +3 -3
  94. data/lib/new_relic/agent/instrumentation/fiber/chain.rb +20 -0
  95. data/lib/new_relic/agent/instrumentation/fiber/instrumentation.rb +24 -0
  96. data/lib/new_relic/agent/instrumentation/fiber/prepend.rb +18 -0
  97. data/lib/new_relic/agent/instrumentation/fiber.rb +25 -0
  98. data/lib/new_relic/agent/instrumentation/grape/instrumentation.rb +4 -4
  99. data/lib/new_relic/agent/instrumentation/grape.rb +4 -4
  100. data/lib/new_relic/agent/instrumentation/grpc/client/instrumentation.rb +2 -1
  101. data/lib/new_relic/agent/instrumentation/grpc/server/instrumentation.rb +3 -3
  102. data/lib/new_relic/agent/instrumentation/httprb.rb +1 -1
  103. data/lib/new_relic/agent/instrumentation/ignore_actions.rb +1 -1
  104. data/lib/new_relic/agent/instrumentation/logger.rb +1 -1
  105. data/lib/new_relic/agent/instrumentation/memcache/instrumentation.rb +2 -2
  106. data/lib/new_relic/agent/instrumentation/memcache.rb +8 -8
  107. data/lib/new_relic/agent/instrumentation/middleware_proxy.rb +3 -3
  108. data/lib/new_relic/agent/instrumentation/middleware_tracing.rb +1 -1
  109. data/lib/new_relic/agent/instrumentation/mongodb_command_subscriber.rb +5 -5
  110. data/lib/new_relic/agent/instrumentation/net_http.rb +2 -2
  111. data/lib/new_relic/agent/instrumentation/notifications_subscriber.rb +1 -1
  112. data/lib/new_relic/agent/instrumentation/padrino/instrumentation.rb +3 -3
  113. data/lib/new_relic/agent/instrumentation/passenger_instrumentation.rb +2 -2
  114. data/lib/new_relic/agent/instrumentation/rack/instrumentation.rb +1 -1
  115. data/lib/new_relic/agent/instrumentation/rails3/action_controller.rb +3 -2
  116. data/lib/new_relic/agent/instrumentation/rails_middleware.rb +1 -1
  117. data/lib/new_relic/agent/instrumentation/rake/instrumentation.rb +8 -15
  118. data/lib/new_relic/agent/instrumentation/rake.rb +3 -3
  119. data/lib/new_relic/agent/instrumentation/redis/constants.rb +1 -1
  120. data/lib/new_relic/agent/instrumentation/redis/instrumentation.rb +2 -1
  121. data/lib/new_relic/agent/instrumentation/redis.rb +1 -1
  122. data/lib/new_relic/agent/instrumentation/resque/helper.rb +1 -1
  123. data/lib/new_relic/agent/instrumentation/resque.rb +1 -1
  124. data/lib/new_relic/agent/instrumentation/sequel.rb +8 -9
  125. data/lib/new_relic/agent/instrumentation/sequel_helper.rb +10 -10
  126. data/lib/new_relic/agent/instrumentation/sidekiq/extensions/delayed_class.rb +1 -1
  127. data/lib/new_relic/agent/instrumentation/sidekiq/server.rb +1 -1
  128. data/lib/new_relic/agent/instrumentation/sinatra/ignorer.rb +1 -1
  129. data/lib/new_relic/agent/instrumentation/sinatra/instrumentation.rb +6 -5
  130. data/lib/new_relic/agent/instrumentation/sinatra/transaction_namer.rb +1 -1
  131. data/lib/new_relic/agent/instrumentation/thread/instrumentation.rb +3 -7
  132. data/lib/new_relic/agent/instrumentation/tilt/instrumentation.rb +2 -1
  133. data/lib/new_relic/agent/instrumentation/typhoeus/instrumentation.rb +5 -5
  134. data/lib/new_relic/agent/javascript_instrumentor.rb +29 -24
  135. data/lib/new_relic/agent/linking_metadata.rb +2 -2
  136. data/lib/new_relic/agent/log_event_aggregator.rb +15 -15
  137. data/lib/new_relic/agent/logging.rb +73 -33
  138. data/lib/new_relic/agent/messaging.rb +7 -5
  139. data/lib/new_relic/agent/method_tracer.rb +6 -6
  140. data/lib/new_relic/agent/method_tracer_helpers.rb +1 -1
  141. data/lib/new_relic/agent/monitors/cross_app_monitor.rb +4 -5
  142. data/lib/new_relic/agent/monitors/distributed_tracing_monitor.rb +1 -1
  143. data/lib/new_relic/agent/new_relic_service/encoders.rb +1 -1
  144. data/lib/new_relic/agent/new_relic_service/json_marshaller.rb +2 -2
  145. data/lib/new_relic/agent/new_relic_service/security_policy_settings.rb +0 -1
  146. data/lib/new_relic/agent/new_relic_service.rb +15 -15
  147. data/lib/new_relic/agent/obfuscator.rb +1 -1
  148. data/lib/new_relic/agent/parameter_filtering.rb +6 -6
  149. data/lib/new_relic/agent/pipe_channel_manager.rb +7 -6
  150. data/lib/new_relic/agent/pipe_service.rb +5 -3
  151. data/lib/new_relic/agent/priority_sampled_buffer.rb +1 -1
  152. data/lib/new_relic/agent/rules_engine/segment_terms_rule.rb +0 -1
  153. data/lib/new_relic/agent/sampler.rb +1 -1
  154. data/lib/new_relic/agent/sampler_collection.rb +1 -1
  155. data/lib/new_relic/agent/samplers/cpu_sampler.rb +5 -5
  156. data/lib/new_relic/agent/samplers/delayed_job_sampler.rb +9 -9
  157. data/lib/new_relic/agent/samplers/memory_sampler.rb +9 -9
  158. data/lib/new_relic/agent/samplers/object_sampler.rb +1 -1
  159. data/lib/new_relic/agent/span_event_aggregator.rb +4 -4
  160. data/lib/new_relic/agent/span_event_primitive.rb +2 -2
  161. data/lib/new_relic/agent/sql_sampler.rb +2 -2
  162. data/lib/new_relic/agent/stats.rb +1 -1
  163. data/lib/new_relic/agent/synthetics_event_aggregator.rb +1 -1
  164. data/lib/new_relic/agent/system_info.rb +10 -10
  165. data/lib/new_relic/agent/threading/agent_thread.rb +1 -1
  166. data/lib/new_relic/agent/threading/backtrace_node.rb +3 -3
  167. data/lib/new_relic/agent/threading/backtrace_service.rb +3 -7
  168. data/lib/new_relic/agent/threading/thread_profile.rb +5 -5
  169. data/lib/new_relic/agent/timestamp_sampled_buffer.rb +1 -1
  170. data/lib/new_relic/agent/tracer.rb +18 -8
  171. data/lib/new_relic/agent/transaction/abstract_segment.rb +9 -9
  172. data/lib/new_relic/agent/transaction/datastore_segment.rb +1 -1
  173. data/lib/new_relic/agent/transaction/distributed_tracer.rb +7 -6
  174. data/lib/new_relic/agent/transaction/distributed_tracing.rb +6 -6
  175. data/lib/new_relic/agent/transaction/external_request_segment.rb +11 -11
  176. data/lib/new_relic/agent/transaction/message_broker_segment.rb +1 -1
  177. data/lib/new_relic/agent/transaction/request_attributes.rb +2 -2
  178. data/lib/new_relic/agent/transaction/segment.rb +1 -1
  179. data/lib/new_relic/agent/transaction/synthetics_sample_buffer.rb +1 -1
  180. data/lib/new_relic/agent/transaction/trace.rb +1 -1
  181. data/lib/new_relic/agent/transaction/trace_context.rb +4 -4
  182. data/lib/new_relic/agent/transaction/trace_node.rb +8 -7
  183. data/lib/new_relic/agent/transaction/tracing.rb +4 -4
  184. data/lib/new_relic/agent/transaction/transaction_sample_buffer.rb +1 -1
  185. data/lib/new_relic/agent/transaction.rb +56 -52
  186. data/lib/new_relic/agent/transaction_error_primitive.rb +5 -5
  187. data/lib/new_relic/agent/transaction_event_aggregator.rb +4 -4
  188. data/lib/new_relic/agent/transaction_event_primitive.rb +3 -3
  189. data/lib/new_relic/agent/transaction_sampler.rb +3 -3
  190. data/lib/new_relic/agent/transaction_time_aggregator.rb +7 -3
  191. data/lib/new_relic/agent/utilization/aws.rb +1 -1
  192. data/lib/new_relic/agent/utilization/azure.rb +3 -3
  193. data/lib/new_relic/agent/utilization/gcp.rb +3 -3
  194. data/lib/new_relic/agent/utilization/pcf.rb +1 -1
  195. data/lib/new_relic/agent/utilization/vendor.rb +1 -1
  196. data/lib/new_relic/agent/vm/monotonic_gc_profiler.rb +1 -1
  197. data/lib/new_relic/agent/vm/mri_vm.rb +9 -8
  198. data/lib/new_relic/agent/worker_loop.rb +1 -1
  199. data/lib/new_relic/agent.rb +79 -35
  200. data/lib/new_relic/cli/command.rb +3 -3
  201. data/lib/new_relic/cli/commands/deployments.rb +26 -25
  202. data/lib/new_relic/cli/commands/install.rb +23 -23
  203. data/lib/new_relic/collection_helper.rb +2 -2
  204. data/lib/new_relic/constants.rb +7 -8
  205. data/lib/new_relic/control/class_methods.rb +3 -3
  206. data/lib/new_relic/control/frameworks/rails.rb +30 -18
  207. data/lib/new_relic/control/instance_methods.rb +6 -6
  208. data/lib/new_relic/control/instrumentation.rb +1 -1
  209. data/lib/new_relic/control/private_instance_methods.rb +1 -1
  210. data/lib/new_relic/dependency_detection.rb +4 -17
  211. data/lib/new_relic/environment_report.rb +4 -4
  212. data/lib/new_relic/helper.rb +2 -1
  213. data/lib/new_relic/language_support.rb +1 -1
  214. data/lib/new_relic/latest_changes.rb +5 -5
  215. data/lib/new_relic/local_environment.rb +0 -10
  216. data/lib/new_relic/noticed_error.rb +20 -18
  217. data/lib/new_relic/rack/browser_monitoring.rb +20 -16
  218. data/lib/new_relic/recipes/capistrano3.rb +1 -1
  219. data/lib/new_relic/recipes/capistrano_legacy.rb +6 -6
  220. data/lib/new_relic/recipes/helpers/send_deployment.rb +5 -5
  221. data/lib/new_relic/supportability_helper.rb +2 -1
  222. data/lib/new_relic/version.rb +2 -2
  223. data/lib/newrelic_rpm.rb +4 -4
  224. data/lib/sequel/extensions/{newrelic_instrumentation.rb → new_relic_instrumentation.rb} +5 -5
  225. data/lib/sequel/plugins/{newrelic_instrumentation.rb → new_relic_instrumentation.rb} +4 -4
  226. data/lib/tasks/config.rake +12 -12
  227. data/lib/tasks/coverage_report.rake +3 -3
  228. data/lib/tasks/helpers/format.rb +10 -10
  229. data/lib/tasks/helpers/removers.rb +5 -5
  230. data/lib/tasks/install.rake +4 -4
  231. data/lib/tasks/instrumentation_generator/instrumentation.thor +7 -10
  232. data/lib/tasks/instrumentation_generator/templates/Envfile.tt +1 -1
  233. data/lib/tasks/multiverse.rb +12 -6
  234. data/lib/tasks/tests.rake +6 -6
  235. data/newrelic.yml +5 -8
  236. data/newrelic_rpm.gemspec +29 -26
  237. data/test/agent_helper.rb +25 -24
  238. metadata +13 -14
  239. data/lib/new_relic/agent/instrumentation/acts_as_solr.rb +0 -83
  240. data/lib/new_relic/agent/instrumentation/authlogic.rb +0 -33
  241. data/lib/new_relic/agent/instrumentation/data_mapper.rb +0 -215
  242. data/lib/new_relic/agent/instrumentation/rainbows_instrumentation.rb +0 -36
  243. data/lib/new_relic/agent/instrumentation/sunspot.rb +0 -41
@@ -29,11 +29,11 @@ module NewRelic
29
29
  def self.instrumentation_value_of(disable_key, prepend_key = nil)
30
30
  proc do
31
31
  if NewRelic::Agent.config[disable_key]
32
- "disabled"
32
+ 'disabled'
33
33
  elsif prepend_key && !NewRelic::Agent.config[prepend_key]
34
- "chain"
34
+ 'chain'
35
35
  else
36
- "auto"
36
+ 'auto'
37
37
  end
38
38
  end
39
39
  end
@@ -47,7 +47,7 @@ module NewRelic
47
47
  # Marks the config option as deprecated in the documentation once generated.
48
48
  # Does not appear in logs.
49
49
  def self.deprecated_description(new_setting, description)
50
- link_ref = new_setting.to_s.tr(".", "-")
50
+ link_ref = new_setting.to_s.tr('.', '-')
51
51
  %{Please see: [#{new_setting}](docs/agents/ruby-agent/configuration/ruby-agent-configuration##{link_ref}). \n\n#{description}}
52
52
  end
53
53
 
@@ -80,34 +80,35 @@ module NewRelic
80
80
  default_settings[:transform] if default_settings
81
81
  end
82
82
 
83
- def self.config_search_paths
83
+ def self.config_search_paths # rubocop:disable Metrics/AbcSize
84
84
  proc {
85
- paths = [
86
- File.join("config", "newrelic.yml"),
87
- File.join("newrelic.yml"),
88
- File.join("config", "newrelic.yml.erb"),
89
- File.join("newrelic.yml.erb")
90
- ]
85
+ yaml = 'newrelic.yml'
86
+ config_yaml = File.join('config', yaml)
87
+ erb = 'newrelic.yml.erb'
88
+ config_erb = File.join('config', erb)
89
+
90
+ paths = [config_yaml, yaml, config_erb, erb]
91
91
 
92
92
  if NewRelic::Control.instance.root
93
- paths << File.join(NewRelic::Control.instance.root, "config", "newrelic.yml")
94
- paths << File.join(NewRelic::Control.instance.root, "newrelic.yml")
95
- paths << File.join(NewRelic::Control.instance.root, "config", "newrelic.yml.erb")
96
- paths << File.join(NewRelic::Control.instance.root, "newrelic.yml.erb")
93
+ paths << File.join(NewRelic::Control.instance.root, config_yaml)
94
+ paths << File.join(NewRelic::Control.instance.root, yaml)
95
+ paths << File.join(NewRelic::Control.instance.root, config_erb)
96
+ paths << File.join(NewRelic::Control.instance.root, erb)
97
97
  end
98
98
 
99
99
  if ENV['HOME']
100
- paths << File.join(ENV['HOME'], ".newrelic", "newrelic.yml")
101
- paths << File.join(ENV['HOME'], "newrelic.yml")
102
- paths << File.join(ENV['HOME'], ".newrelic", "newrelic.yml.erb")
103
- paths << File.join(ENV['HOME'], "newrelic.yml.erb")
100
+ paths << File.join(ENV['HOME'], '.newrelic', yaml)
101
+ paths << File.join(ENV['HOME'], yaml)
102
+ paths << File.join(ENV['HOME'], '.newrelic', erb)
103
+ paths << File.join(ENV['HOME'], erb)
104
104
  end
105
105
 
106
106
  # If we're packaged for warbler, we can tell from GEM_HOME
107
- if ENV["GEM_HOME"] && ENV["GEM_HOME"].end_with?(".jar!")
108
- app_name = File.basename(ENV["GEM_HOME"], ".jar!")
109
- paths << File.join(ENV["GEM_HOME"], app_name, "config", "newrelic.yml")
110
- paths << File.join(ENV["GEM_HOME"], app_name, "config", "newrelic.yml.erb")
107
+ # the following line needs else branch coverage
108
+ if ENV['GEM_HOME'] && ENV['GEM_HOME'].end_with?('.jar!') # rubocop:disable Style/SafeNavigation
109
+ app_name = File.basename(ENV['GEM_HOME'], '.jar!')
110
+ paths << File.join(ENV['GEM_HOME'], app_name, config_yaml)
111
+ paths << File.join(ENV['GEM_HOME'], app_name, config_erb)
111
112
  end
112
113
 
113
114
  paths
@@ -176,13 +177,6 @@ module NewRelic
176
177
  proc { NewRelic::Agent::Threading::BacktraceService.is_supported? }
177
178
  end
178
179
 
179
- # This check supports the js_errors_beta key we've asked clients to
180
- # set. Once JS errors are GA, browser_monitoring.loader can stop
181
- # being dynamic.
182
- def self.browser_monitoring_loader
183
- proc { NewRelic::Agent.config[:js_errors_beta] ? "full" : "rum" }
184
- end
185
-
186
180
  def self.transaction_tracer_transaction_threshold
187
181
  proc { NewRelic::Agent.config[:apdex_t] * 4 }
188
182
  end
@@ -213,11 +207,11 @@ module NewRelic
213
207
  # only used for deployment task
214
208
  proc do
215
209
  api_version = if NewRelic::Agent.config[:api_key].nil? || NewRelic::Agent.config[:api_key].empty?
216
- "rpm"
210
+ 'rpm'
217
211
  else
218
- "api"
212
+ 'api'
219
213
  end
220
- api_region = "eu." if String(NewRelic::Agent.config[:license_key]).start_with?('eu')
214
+ api_region = 'eu.' if String(NewRelic::Agent.config[:license_key]).start_with?('eu')
221
215
 
222
216
  "#{api_version}.#{api_region}newrelic.com"
223
217
  end
@@ -348,7 +342,7 @@ module NewRelic
348
342
  :public => true,
349
343
  :type => String,
350
344
  :allowed_from_server => false,
351
- :description => 'Your New Relic [license key](/docs/apis/intro-apis/new-relic-api-keys/#ingest-license-key).'
345
+ :description => 'Your New Relic <LicenseKey />.'
352
346
  },
353
347
  :log_level => {
354
348
  :default => 'info',
@@ -363,19 +357,19 @@ module NewRelic
363
357
  :public => true,
364
358
  :type => Array,
365
359
  :allowed_from_server => false,
366
- :description => <<-DESCRIPTION
367
- An array of ActiveSupport custom event names to subscribe to and instrument. For example,
368
- - one.custom.event
369
- - another.event
370
- - a.third.event
360
+ :description => <<~DESCRIPTION
361
+ An array of ActiveSupport custom event names to subscribe to and instrument. For example,
362
+ - one.custom.event
363
+ - another.event
364
+ - a.third.event
371
365
  DESCRIPTION
372
366
  },
367
+ # this is only set via server side config
373
368
  :apdex_t => {
374
369
  :default => 0.5,
375
- :public => true,
370
+ :public => false,
376
371
  :type => Float,
377
372
  :allowed_from_server => true,
378
- :deprecated => true,
379
373
  :description => 'For agent versions 3.5.0 or higher, [set your Apdex T via the New Relic UI](/docs/apm/new-relic-apm/apdex/changing-your-apdex-settings).'
380
374
  },
381
375
  :api_key => {
@@ -412,12 +406,12 @@ An array of ActiveSupport custom event names to subscribe to and instrument. For
412
406
  :public => true,
413
407
  :type => Boolean,
414
408
  :allowed_from_server => false,
415
- :description => <<-DESCRIPTION
416
- When `true`, the agent captures HTTP request parameters and attaches them to transaction traces, traced errors, and [`TransactionError` events](/attribute-dictionary?attribute_name=&events_tids%5B%5D=8241).
409
+ :description => <<~DESCRIPTION
410
+ When `true`, the agent captures HTTP request parameters and attaches them to transaction traces, traced errors, and [`TransactionError` events](/attribute-dictionary?attribute_name=&events_tids%5B%5D=8241).
417
411
 
418
- <Callout variant="caution">
419
- When using the `capture_params` setting, the Ruby agent will not attempt to filter secret information. <b>Recommendation:</b> To filter secret information from request parameters, use the [`attributes.include` setting](/docs/agents/ruby-agent/attributes/enable-disable-attributes-ruby) instead. For more information, see the <a href="/docs/agents/ruby-agent/attributes/ruby-attribute-examples#ex_req_params">Ruby attribute examples</a>.
420
- </Callout>
412
+ <Callout variant="caution">
413
+ When using the `capture_params` setting, the Ruby agent will not attempt to filter secret information. <b>Recommendation:</b> To filter secret information from request parameters, use the [`attributes.include` setting](/docs/agents/ruby-agent/attributes/enable-disable-attributes-ruby) instead. For more information, see the <a href="/docs/agents/ruby-agent/attributes/ruby-attribute-examples#ex_req_params">Ruby attribute examples</a>.
414
+ </Callout>
421
415
  DESCRIPTION
422
416
  },
423
417
  :'clear_transaction_state_after_fork' => {
@@ -439,7 +433,7 @@ When `true`, the agent captures HTTP request parameters and attaches them to tra
439
433
  :public => true,
440
434
  :type => Boolean,
441
435
  :allowed_from_server => true,
442
- :description => "Allows newrelic distributed tracing headers to be suppressed on outbound requests."
436
+ :description => 'Allows newrelic distributed tracing headers to be suppressed on outbound requests.'
443
437
  },
444
438
  :force_install_exit_handler => {
445
439
  :default => false,
@@ -566,14 +560,6 @@ When `true`, the agent captures HTTP request parameters and attaches them to tra
566
560
  :description => 'Defines the maximum number of seconds the agent should spend attempting to connect to the collector.'
567
561
  },
568
562
  # Transaction tracer
569
- :'transaction_tracer.capture_attributes' => {
570
- :default => true,
571
- :public => true,
572
- :type => Boolean,
573
- :deprecated => true,
574
- :allowed_from_server => false,
575
- :description => 'Use [`transaction_tracer.attributes.enabled`](#transaction_tracer-attributes-enabled) instead.'
576
- },
577
563
  :'transaction_tracer.enabled' => {
578
564
  :default => true,
579
565
  :public => true,
@@ -639,26 +625,18 @@ When `true`, the agent captures HTTP request parameters and attaches them to tra
639
625
  :description => 'Specify a threshold in seconds. Transactions with a duration longer than this threshold are eligible for transaction traces. Specify a float value or the string `apdex_f`.'
640
626
  },
641
627
  # Error collector
642
- :'error_collector.capture_attributes' => {
643
- :default => true,
644
- :public => true,
645
- :type => Boolean,
646
- :deprecated => true,
647
- :allowed_from_server => false,
648
- :description => 'Use [`error_collector.attributes.enabled`](#error_collector-attributes-enabled) instead.'
649
- },
650
628
  :'error_collector.ignore_classes' => {
651
- :default => [],
629
+ :default => ['ActionController::RoutingError', 'Sinatra::NotFound'],
652
630
  :public => true,
653
631
  :type => Array,
654
632
  :allowed_from_server => true,
655
633
  :dynamic_name => true,
656
- :description => <<-DESCRIPTION
657
- A list of error classes that the agent should ignore.
634
+ :description => <<~DESCRIPTION
635
+ A list of error classes that the agent should ignore.
658
636
 
659
- <Callout variant="caution">
660
- This option can't be set via environment variable.
661
- </Callout>
637
+ <Callout variant="caution">
638
+ This option can't be set via environment variable.
639
+ </Callout>
662
640
  DESCRIPTION
663
641
  },
664
642
  :'error_collector.capture_events' => {
@@ -683,12 +661,12 @@ A list of error classes that the agent should ignore.
683
661
  :type => Array,
684
662
  :allowed_from_server => true,
685
663
  :dynamic_name => true,
686
- :description => <<-DESCRIPTION
687
- A list of error classes that the agent should treat as expected.
664
+ :description => <<~DESCRIPTION
665
+ A list of error classes that the agent should treat as expected.
688
666
 
689
- <Callout variant="caution">
690
- This option can't be set via environment variable.
691
- </Callout>
667
+ <Callout variant="caution">
668
+ This option can't be set via environment variable.
669
+ </Callout>
692
670
  DESCRIPTION
693
671
  },
694
672
  :'error_collector.expected_messages' => {
@@ -697,12 +675,12 @@ A list of error classes that the agent should treat as expected.
697
675
  :type => Hash,
698
676
  :allowed_from_server => true,
699
677
  :dynamic_name => true,
700
- :description => <<-DESCRIPTION
701
- A map of error classes to a list of messages. When an error of one of the classes specified here occurs, if its error message contains one of the strings corresponding to it here, that error will be treated as expected.
678
+ :description => <<~DESCRIPTION
679
+ A map of error classes to a list of messages. When an error of one of the classes specified here occurs, if its error message contains one of the strings corresponding to it here, that error will be treated as expected.
702
680
 
703
- <Callout variant="caution">
704
- This option can't be set via environment variable.
705
- </Callout>
681
+ <Callout variant="caution">
682
+ This option can't be set via environment variable.
683
+ </Callout>
706
684
  DESCRIPTION
707
685
  },
708
686
  :'error_collector.expected_status_codes' => {
@@ -713,33 +691,19 @@ A map of error classes to a list of messages. When an error of one of the classe
713
691
  :dynamic_name => true,
714
692
  :description => 'A comma separated list of status codes, possibly including ranges. Errors associated with these status codes, where applicable, will be treated as expected.'
715
693
  },
716
- :'error_collector.ignore_errors' => {
717
- :default => 'ActionController::RoutingError,Sinatra::NotFound',
718
- :public => true,
719
- :type => String,
720
- :deprecated => true,
721
- :allowed_from_server => true,
722
- :dynamic_name => true,
723
- :description => <<-DESCRIPTION
724
- Use `error_collector.ignore_classes` instead. Specify a comma-delimited list of error classes that the agent should ignore.
725
694
 
726
- <Callout variant="caution">
727
- Server side configuration takes precedence for this setting over all environment configurations. This differs from all other configuration settings where environment variable take precedence over server side configuration.
728
- </Callout>
729
- DESCRIPTION
730
- },
731
695
  :'error_collector.ignore_messages' => {
732
696
  :default => {},
733
697
  :public => true,
734
698
  :type => Hash,
735
699
  :allowed_from_server => true,
736
700
  :dynamic_name => true,
737
- :description => <<-DESCRIPTION
738
- A map of error classes to a list of messages. When an error of one of the classes specified here occurs, if its error message contains one of the strings corresponding to it here, that error will be ignored.
701
+ :description => <<~DESCRIPTION
702
+ A map of error classes to a list of messages. When an error of one of the classes specified here occurs, if its error message contains one of the strings corresponding to it here, that error will be ignored.
739
703
 
740
- <Callout variant="caution">
741
- This option can't be set via environment variable.
742
- </Callout>
704
+ <Callout variant="caution">
705
+ This option can't be set via environment variable.
706
+ </Callout>
743
707
  DESCRIPTION
744
708
  },
745
709
  :'error_collector.ignore_status_codes' => {
@@ -773,51 +737,16 @@ A map of error classes to a list of messages. When an error of one of the classe
773
737
  :allowed_from_server => true,
774
738
  :description => 'If `true`, enables [auto-injection](/docs/browser/new-relic-browser/installation-configuration/adding-apps-new-relic-browser#select-apm-app) of the JavaScript header for page load timing (sometimes referred to as real user monitoring or RUM).'
775
739
  },
776
- :'browser_monitoring.capture_attributes' => {
777
- :default => false,
778
- :public => true,
779
- :type => Boolean,
780
- :deprecated => true,
781
- :allowed_from_server => false,
782
- :description => 'Use [`browser_monitoring.attributes.enabled`](#browser_monitoring-attributes-enabled) instead.'
783
- },
784
- # Analytics events
785
- :'analytics_events.capture_attributes' => {
786
- :default => true,
787
- :public => true,
788
- :type => Boolean,
789
- :deprecated => true,
790
- :allowed_from_server => false,
791
- :description => 'Use [`transaction_events.attributes.enabled`](#transaction_events-attributes-enabled) instead.'
792
- },
793
- :'analytics_events.enabled' => {
794
- :default => true,
795
- :public => true,
796
- :type => Boolean,
797
- :deprecated => true,
798
- :allowed_from_server => true,
799
- :description => deprecated_description(:'transaction_events.enabled', 'If `true`, enables analytics event sampling.')
800
- },
801
- :'analytics_events.max_samples_stored' => {
802
- :default => 1200,
803
- :public => true,
804
- :type => Integer,
805
- :deprecated => true,
806
- :allowed_from_server => true,
807
- :description => deprecated_description(:'transaction_events.max_samples_stored', 'Defines the maximum number of request events reported from a single harvest.')
808
- },
809
740
  # Transaction events
810
741
  :'transaction_events.enabled' => {
811
- :default => value_of(:'analytics_events.enabled'),
812
- :documentation_default => true,
742
+ :default => true,
813
743
  :public => true,
814
744
  :type => Boolean,
815
745
  :allowed_from_server => true,
816
746
  :description => 'If `true`, enables transaction event sampling.'
817
747
  },
818
748
  :'transaction_events.max_samples_stored' => {
819
- :default => value_of(:'analytics_events.max_samples_stored'),
820
- :documentation_default => 1200,
749
+ :default => 1200,
821
750
  :public => true,
822
751
  :type => Integer,
823
752
  :allowed_from_server => true,
@@ -885,8 +814,7 @@ A map of error classes to a list of messages. When an error of one of the classe
885
814
  :description => 'Prefix of attributes to include in all destinations. Allows `*` as wildcard at end.'
886
815
  },
887
816
  :'browser_monitoring.attributes.enabled' => {
888
- :default => value_of(:'browser_monitoring.capture_attributes'),
889
- :documentation_default => false,
817
+ :default => false,
890
818
  :public => true,
891
819
  :type => Boolean,
892
820
  :allowed_from_server => false,
@@ -909,8 +837,7 @@ A map of error classes to a list of messages. When an error of one of the classe
909
837
  :description => 'Prefix of attributes to include in browser monitoring. Allows `*` as wildcard at end.'
910
838
  },
911
839
  :'error_collector.attributes.enabled' => {
912
- :default => value_of(:'error_collector.capture_attributes'),
913
- :documentation_default => true,
840
+ :default => true,
914
841
  :public => true,
915
842
  :type => Boolean,
916
843
  :allowed_from_server => false,
@@ -956,8 +883,7 @@ A map of error classes to a list of messages. When an error of one of the classe
956
883
  :description => 'Prefix of attributes to include on span events. Allows `*` as wildcard at end.'
957
884
  },
958
885
  :'transaction_events.attributes.enabled' => {
959
- :default => value_of(:'analytics_events.capture_attributes'),
960
- :documentation_default => true,
886
+ :default => true,
961
887
  :public => true,
962
888
  :type => Boolean,
963
889
  :allowed_from_server => false,
@@ -1003,8 +929,7 @@ A map of error classes to a list of messages. When an error of one of the classe
1003
929
  :description => 'Prefix of attributes to include on transaction segments. Allows `*` as wildcard at end.'
1004
930
  },
1005
931
  :'transaction_tracer.attributes.enabled' => {
1006
- :default => value_of(:'transaction_tracer.capture_attributes'),
1007
- :documentation_default => true,
932
+ :default => true,
1008
933
  :public => true,
1009
934
  :type => Boolean,
1010
935
  :allowed_from_server => false,
@@ -1035,7 +960,7 @@ A map of error classes to a list of messages. When an error of one of the classe
1035
960
  :description => 'If `true`, enables an audit log which logs communications with the New Relic [collector](/docs/using-new-relic/welcome-new-relic/get-started/glossary/#collector).'
1036
961
  },
1037
962
  :'audit_log.endpoints' => {
1038
- :default => [".*"],
963
+ :default => ['.*'],
1039
964
  :public => true,
1040
965
  :type => Array,
1041
966
  :allowed_from_server => false,
@@ -1213,15 +1138,6 @@ A map of error classes to a list of messages. When an error of one of the classe
1213
1138
  :allowed_from_server => false,
1214
1139
  :description => 'If `true`, disables instrumentation for Active Record 4+'
1215
1140
  },
1216
- :disable_bunny => {
1217
- :default => false,
1218
- :public => true,
1219
- :type => Boolean,
1220
- :deprecated => true,
1221
- :dynamic_name => true,
1222
- :allowed_from_server => false,
1223
- :description => deprecated_description(:'instrumentation.bunny', 'If `true`, disables instrumentation for the bunny gem.')
1224
- },
1225
1141
  :disable_cpu_sampler => {
1226
1142
  :default => false,
1227
1143
  :public => true,
@@ -1230,48 +1146,6 @@ A map of error classes to a list of messages. When an error of one of the classe
1230
1146
  :allowed_from_server => false,
1231
1147
  :description => 'If `true`, the agent won\'t sample the CPU usage of the host process.'
1232
1148
  },
1233
- :disable_curb => {
1234
- :default => false,
1235
- :public => true,
1236
- :type => Boolean,
1237
- :deprecated => true,
1238
- :dynamic_name => true,
1239
- :allowed_from_server => false,
1240
- :description => deprecated_description(:'instrumentation.curb', 'If `true`, disables instrumentation for the curb gem.')
1241
- },
1242
- :disable_database_instrumentation => {
1243
- :default => false,
1244
- :public => true,
1245
- :type => Boolean,
1246
- :allowed_from_server => false,
1247
- :deprecated => true,
1248
- :description => 'Use [`disable_sequel_instrumentation`](#disable_sequel_instrumentation) instead.'
1249
- },
1250
- :disable_data_mapper => {
1251
- :default => false,
1252
- :public => true,
1253
- :type => Boolean,
1254
- :allowed_from_server => false,
1255
- :description => 'If `true`, disables DataMapper instrumentation.'
1256
- },
1257
- :disable_dalli => {
1258
- :default => value_of(:disable_memcache_instrumentation),
1259
- :documentation_default => false,
1260
- :public => true,
1261
- :type => Boolean,
1262
- :deprecated => true,
1263
- :allowed_from_server => false,
1264
- :description => deprecated_description(:'instrumentation.memcache', 'If `true`, disables instrumentation for the dalli gem.')
1265
- },
1266
- :disable_dalli_cas_client => {
1267
- :default => value_of(:disable_memcache_instrumentation),
1268
- :documentation_default => false,
1269
- :public => true,
1270
- :type => Boolean,
1271
- :deprecated => true,
1272
- :allowed_from_server => false,
1273
- :description => deprecated_description(:'instrumentation.memcache', "If `true`, disables instrumentation for the dalli gem's additional CAS client support.")
1274
- },
1275
1149
  :disable_delayed_job_sampler => {
1276
1150
  :default => false,
1277
1151
  :public => true,
@@ -1280,49 +1154,6 @@ A map of error classes to a list of messages. When an error of one of the classe
1280
1154
  :allowed_from_server => false,
1281
1155
  :description => 'If `true`, the agent won\'t measure the depth of Delayed Job queues.'
1282
1156
  },
1283
- :disable_dj => {
1284
- :default => false,
1285
- :public => true,
1286
- :deprecated => true,
1287
- :type => Boolean,
1288
- :allowed_from_server => false,
1289
- :description => deprecated_description(:'instrumentation.delayed_job', 'If `true`, disables [Delayed::Job instrumentation](/docs/agents/ruby-agent/background-jobs/delayedjob).')
1290
- },
1291
- :disable_excon => {
1292
- :default => false,
1293
- :public => true,
1294
- :type => Boolean,
1295
- :dynamic_name => true,
1296
- :deprecated => true,
1297
- :allowed_from_server => false,
1298
- :description => deprecated_description(:'instrumentation.excon', 'If `true`, disables instrumentation for the excon gem.')
1299
- },
1300
- :disable_memcached => {
1301
- :default => value_of(:disable_memcache_instrumentation),
1302
- :documentation_default => false,
1303
- :public => true,
1304
- :type => Boolean,
1305
- :deprecated => true,
1306
- :allowed_from_server => false,
1307
- :description => deprecated_description(:'instrumentation.memcached', 'If `true`, disables instrumentation for the memcached gem.')
1308
- },
1309
- :disable_memcache_client => {
1310
- :default => value_of(:disable_memcache_instrumentation),
1311
- :documentation_default => false,
1312
- :public => true,
1313
- :type => Boolean,
1314
- :deprecated => true,
1315
- :allowed_from_server => false,
1316
- :description => deprecated_description(:'instrumentation.memcache-client', 'If `true`, disables instrumentation for the memcache-client gem.')
1317
- },
1318
- :disable_memcache_instrumentation => {
1319
- :default => false,
1320
- :public => true,
1321
- :type => Boolean,
1322
- :deprecated => true,
1323
- :allowed_from_server => false,
1324
- :description => deprecated_description(:'instrumentation.memcache', 'If `true`, disables memcache instrumentation.')
1325
- },
1326
1157
  :disable_gc_profiler => {
1327
1158
  :default => false,
1328
1159
  :public => true,
@@ -1330,42 +1161,6 @@ A map of error classes to a list of messages. When an error of one of the classe
1330
1161
  :allowed_from_server => false,
1331
1162
  :description => 'If `true`, disables the use of GC::Profiler to measure time spent in garbage collection'
1332
1163
  },
1333
- :disable_grape => {
1334
- :default => false,
1335
- :public => true,
1336
- :type => Boolean,
1337
- :allowed_from_server => false,
1338
- :deprecated => true,
1339
- :description => deprecated_description(:'instrumentation.grape',
1340
- 'If `true`, the agent won\'t install Grape instrumentation.')
1341
- },
1342
- :disable_httpclient => {
1343
- :default => false,
1344
- :public => true,
1345
- :type => Boolean,
1346
- :dynamic_name => true,
1347
- :deprecated => true,
1348
- :allowed_from_server => false,
1349
- :description => deprecated_description(:'instrumentation.httpclient', 'If `true`, disables instrumentation for the httpclient gem.')
1350
- },
1351
- :disable_httprb => {
1352
- :default => false,
1353
- :public => true,
1354
- :type => Boolean,
1355
- :dynamic_name => true,
1356
- :deprecated => true,
1357
- :allowed_from_server => false,
1358
- :description => deprecated_description(:'instrumentation.httprb', 'If `true`, the agent won\'t install instrumentation for the http.rb gem.')
1359
- },
1360
- :disable_mongo => {
1361
- :default => false,
1362
- :public => true,
1363
- :type => Boolean,
1364
- :allowed_from_server => false,
1365
- :dynamic_name => true,
1366
- :deprecated => true,
1367
- :description => deprecated_description(:'instrumentation.mongo', 'If `true`, the agent won\'t install [instrumentation for the Mongo gem](/docs/agents/ruby-agent/frameworks/mongo-instrumentation).')
1368
- },
1369
1164
  :disable_memory_sampler => {
1370
1165
  :default => false,
1371
1166
  :public => true,
@@ -1381,78 +1176,6 @@ A map of error classes to a list of messages. When an error of one of the classe
1381
1176
  :allowed_from_server => false,
1382
1177
  :description => 'If `true`, the agent won\'t wrap third-party middlewares in instrumentation (regardless of whether they are installed via Rack::Builder or Rails).'
1383
1178
  },
1384
- :disable_net_http => {
1385
- :default => false,
1386
- :public => true,
1387
- :type => Boolean,
1388
- :dynamic_name => true,
1389
- :allowed_from_server => false,
1390
- :deprecated => true,
1391
- :description => deprecated_description(:'instrumentation.net_http',
1392
- 'If `true`, disables instrumentation for Net::HTTP.')
1393
- },
1394
- :disable_puma_rack => {
1395
- :default => value_of(:disable_rack),
1396
- :documentation_default => false,
1397
- :public => true,
1398
- :type => Boolean,
1399
- :dynamic_name => true,
1400
- :allowed_from_server => false,
1401
- :deprecated => true,
1402
- :description => deprecated_description(:'instrumentation.puma_rack', 'If `true`, prevents the agent from hooking into the `to_app` method in Puma::Rack::Builder to find gems to instrument during application startup.')
1403
- },
1404
- :disable_puma_rack_urlmap => {
1405
- :default => value_of(:disable_rack_urlmap),
1406
- :documentation_default => false,
1407
- :public => true,
1408
- :type => Boolean,
1409
- :dynamic_name => true,
1410
- :allowed_from_server => false,
1411
- :deprecated => true,
1412
- :description => deprecated_description(:'instrumentation.puma_rack_urlmap', 'If `true`, prevents the agent from hooking into Puma::Rack::URLMap to install middleware tracing.')
1413
- },
1414
- :disable_rack => {
1415
- :default => false,
1416
- :public => true,
1417
- :type => Boolean,
1418
- :dynamic_name => true,
1419
- :allowed_from_server => false,
1420
- :deprecated => true,
1421
- :description => deprecated_description(:'instrumentation.rack', 'If `true`, prevents the agent from hooking into the `to_app` method in Rack::Builder to find gems to instrument during application startup.')
1422
- },
1423
- :disable_rack_urlmap => {
1424
- :default => false,
1425
- :public => true,
1426
- :type => Boolean,
1427
- :dynamic_name => true,
1428
- :allowed_from_server => false,
1429
- :deprecated => true,
1430
- :description => deprecated_description(:'instrumentation.rack_urlmap', 'If `true`, prevents the agent from hooking into Rack::URLMap to install middleware tracing.')
1431
- },
1432
- :disable_rake => {
1433
- :default => false,
1434
- :public => true,
1435
- :type => Boolean,
1436
- :allowed_from_server => false,
1437
- :deprecated => true,
1438
- :description => deprecated_description(:'instrumentation.rake', 'If `true`, disables Rake instrumentation.')
1439
- },
1440
- :disable_redis => {
1441
- :default => false,
1442
- :public => true,
1443
- :type => Boolean,
1444
- :deprecated => true,
1445
- :allowed_from_server => false,
1446
- :description => deprecated_description(:'instrumentation.redis', 'If `true`, the agent won\'t install [instrumentation for Redis](/docs/agents/ruby-agent/frameworks/redis-instrumentation).')
1447
- },
1448
- :disable_resque => {
1449
- :default => false,
1450
- :public => true,
1451
- :type => Boolean,
1452
- :deprecated => true,
1453
- :allowed_from_server => false,
1454
- :description => deprecated_description(:'instrumentation.resque', 'If `true`, disables [Resque instrumentation](/docs/agents/ruby-agent/background-jobs/resque-instrumentation).')
1455
- },
1456
1179
  :disable_samplers => {
1457
1180
  :default => false,
1458
1181
  :public => true,
@@ -1474,47 +1197,30 @@ A map of error classes to a list of messages. When an error of one of the classe
1474
1197
  :allowed_from_server => false,
1475
1198
  :description => 'If `true`, disables [Sidekiq instrumentation](/docs/agents/ruby-agent/background-jobs/sidekiq-instrumentation).'
1476
1199
  },
1477
- :disable_sinatra => {
1478
- :default => false,
1479
- :public => true,
1480
- :type => Boolean,
1481
- :deprecated => true,
1482
- :allowed_from_server => false,
1483
- :description => deprecated_description(:'instrumentation.sinatra', 'If `true` , disables [Sinatra instrumentation](/docs/agents/ruby-agent/frameworks/sinatra-support).')
1484
- },
1485
1200
  :disable_sinatra_auto_middleware => {
1486
1201
  :default => false,
1487
1202
  :public => true,
1488
1203
  :type => Boolean,
1489
1204
  :allowed_from_server => false,
1490
- :description => <<-DESCRIPTION
1491
- If `true`, disables agent middleware for Sinatra. This middleware is responsible for advanced feature support such as [cross application tracing](/docs/apm/transactions/cross-application-traces/cross-application-tracing), [page load timing](/docs/browser/new-relic-browser/getting-started/new-relic-browser), and [error collection](/docs/apm/applications-menu/events/view-apm-error-analytics).
1205
+ :description => <<~DESCRIPTION
1206
+ If `true`, disables agent middleware for Sinatra. This middleware is responsible for advanced feature support such as [cross application tracing](/docs/apm/transactions/cross-application-traces/cross-application-tracing), [page load timing](/docs/browser/new-relic-browser/getting-started/new-relic-browser), and [error collection](/docs/apm/applications-menu/events/view-apm-error-analytics).
1492
1207
 
1493
- <Callout variant="important">
1494
- Cross application tracing is deprecated in favor of [distributed tracing](/docs/apm/distributed-tracing/getting-started/introduction-distributed-tracing). Distributed tracing is on by default for Ruby agent versions 8.0.0 and above. Middlewares are not required to support distributed tracing.
1208
+ <Callout variant="important">
1209
+ Cross application tracing is deprecated in favor of [distributed tracing](/docs/apm/distributed-tracing/getting-started/introduction-distributed-tracing). Distributed tracing is on by default for Ruby agent versions 8.0.0 and above. Middlewares are not required to support distributed tracing.
1495
1210
 
1496
- To continue using cross application tracing, update the following options in your `newrelic.yml` configuration file:
1211
+ To continue using cross application tracing, update the following options in your `newrelic.yml` configuration file:
1497
1212
 
1498
- ```
1499
- # newrelic.yml
1213
+ ```
1214
+ # newrelic.yml
1500
1215
 
1501
- cross_application_tracer:
1502
- enabled: true
1503
- distributed_tracing:
1504
- enabled: false
1505
- ```
1506
- </Callout>
1216
+ cross_application_tracer:
1217
+ enabled: true
1218
+ distributed_tracing:
1219
+ enabled: false
1220
+ ```
1221
+ </Callout>
1507
1222
  DESCRIPTION
1508
1223
  },
1509
- :disable_typhoeus => {
1510
- :default => false,
1511
- :public => true,
1512
- :type => Boolean,
1513
- :dynamic_name => true,
1514
- :deprecated => true,
1515
- :allowed_from_server => false,
1516
- :description => deprecated_description(:'instrumentation.typhoeus', 'If `true`, the agent won\'t install instrumentation for the typhoeus gem.')
1517
- },
1518
1224
  :disable_view_instrumentation => {
1519
1225
  :default => false,
1520
1226
  :public => true,
@@ -1576,10 +1282,10 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
1576
1282
  :type => String,
1577
1283
  :allowed_from_server => false,
1578
1284
  :external => :infinite_tracing,
1579
- :description => "Configures the hostname for the trace observer Host. " \
1580
- "When configured, enables tail-based sampling by sending all recorded spans " \
1581
- "to a trace observer for further sampling decisions, irrespective of any usual " \
1582
- "agent sampling decision."
1285
+ :description => 'Configures the hostname for the trace observer Host. ' \
1286
+ 'When configured, enables tail-based sampling by sending all recorded spans ' \
1287
+ 'to a trace observer for further sampling decisions, irrespective of any usual ' \
1288
+ 'agent sampling decision.'
1583
1289
  },
1584
1290
  :'infinite_tracing.trace_observer.port' => {
1585
1291
  :default => 443,
@@ -1587,7 +1293,7 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
1587
1293
  :type => Integer,
1588
1294
  :allowed_from_server => false,
1589
1295
  :external => :infinite_tracing,
1590
- :description => "Configures the TCP/IP port for the trace observer Host"
1296
+ :description => 'Configures the TCP/IP port for the trace observer Host'
1591
1297
  },
1592
1298
  # Instrumentation
1593
1299
  :'instrumentation.active_support_logger' => {
@@ -1600,14 +1306,21 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
1600
1306
  :description => 'Controls auto-instrumentation of ActiveSupport::Logger at start up. May be one of [auto|prepend|chain|disabled].'
1601
1307
  },
1602
1308
  :'instrumentation.bunny' => {
1603
- :default => instrumentation_value_of(:disable_bunny),
1604
- :documentation_default => 'auto',
1309
+ :default => 'auto',
1605
1310
  :public => true,
1606
1311
  :type => String,
1607
1312
  :dynamic_name => true,
1608
1313
  :allowed_from_server => false,
1609
1314
  :description => 'Controls auto-instrumentation of bunny at start up. May be one of [auto|prepend|chain|disabled].'
1610
1315
  },
1316
+ :'instrumentation.fiber' => {
1317
+ :default => 'auto',
1318
+ :public => true,
1319
+ :type => String,
1320
+ :dynamic_name => true,
1321
+ :allowed_from_server => false,
1322
+ :description => 'Controls auto-instrumentation of the Fiber class at start up. May be one of [auto|prepend|chain|disabled].'
1323
+ },
1611
1324
  :'instrumentation.concurrent_ruby' => {
1612
1325
  :default => 'auto',
1613
1326
  :public => true,
@@ -1617,7 +1330,7 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
1617
1330
  :description => 'Controls auto-instrumentation of the concurrent-ruby library at start up. May be one of [auto|prepend|chain|disabled].'
1618
1331
  },
1619
1332
  :'instrumentation.curb' => {
1620
- :default => instrumentation_value_of(:disable_curb),
1333
+ :default => 'auto',
1621
1334
  :documentation_default => 'auto',
1622
1335
  :public => true,
1623
1336
  :type => String,
@@ -1626,7 +1339,7 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
1626
1339
  :description => 'Controls auto-instrumentation of Curb at start up. May be one of [auto|prepend|chain|disabled].'
1627
1340
  },
1628
1341
  :'instrumentation.delayed_job' => {
1629
- :default => instrumentation_value_of(:disable_dj),
1342
+ :default => 'auto',
1630
1343
  :documentation_default => 'auto',
1631
1344
  :public => true,
1632
1345
  :type => String,
@@ -1643,22 +1356,21 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
1643
1356
  :description => 'Controls auto-instrumentation of the elasticsearch library at start up. May be one of [auto|prepend|chain|disabled].'
1644
1357
  },
1645
1358
  :'instrumentation.excon' => {
1646
- :default => instrumentation_value_of(:disable_excon),
1359
+ :default => 'enabled',
1647
1360
  :documentation_default => 'enabled',
1648
- :public => :true,
1361
+ :public => true,
1649
1362
  :type => String,
1650
1363
  :dynamic_name => true,
1651
1364
  :allowed_from_server => false,
1652
- :description => "Controls auto-instrumentation of Excon at start up. May be one of [enabled|disabled]."
1365
+ :description => 'Controls auto-instrumentation of Excon at start up. May be one of [enabled|disabled].'
1653
1366
  },
1654
1367
  :'instrumentation.grape' => {
1655
- :default => instrumentation_value_of(:disable_grape_instrumentation),
1656
- :documentation_default => 'auto',
1657
- :public => :true,
1368
+ :default => 'auto',
1369
+ :public => true,
1658
1370
  :type => String,
1659
1371
  :dynamic_name => true,
1660
1372
  :allowed_from_server => false,
1661
- :description => "Controls auto-instrumentation of Grape at start up. May be one of [auto|prepend|chain|disabled]."
1373
+ :description => 'Controls auto-instrumentation of Grape at start up. May be one of [auto|prepend|chain|disabled].'
1662
1374
  },
1663
1375
  :'instrumentation.grpc_client' => {
1664
1376
  :default => instrumentation_value_of(:disable_grpc_client),
@@ -1687,16 +1399,16 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
1687
1399
  :description => 'Controls auto-instrumentation of gRPC servers at start up. May be one of [auto|prepend|chain|disabled].'
1688
1400
  },
1689
1401
  :'instrumentation.httpclient' => {
1690
- :default => instrumentation_value_of(:disable_httpclient),
1402
+ :default => 'auto',
1691
1403
  :documentation_default => 'auto',
1692
1404
  :public => true,
1693
1405
  :type => String,
1694
1406
  :dynamic_name => true,
1695
1407
  :allowed_from_server => false,
1696
- :description => "Controls auto-instrumentation of HTTPClient at start up. May be one of [auto|prepend|chain|disabled]."
1408
+ :description => 'Controls auto-instrumentation of HTTPClient at start up. May be one of [auto|prepend|chain|disabled].'
1697
1409
  },
1698
1410
  :'instrumentation.httprb' => {
1699
- :default => instrumentation_value_of(:disable_httprb),
1411
+ :default => 'auto',
1700
1412
  :documentation_default => 'auto',
1701
1413
  :public => true,
1702
1414
  :type => String,
@@ -1714,8 +1426,7 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
1714
1426
  :description => 'Controls auto-instrumentation of Ruby standard library Logger at start up. May be one of [auto|prepend|chain|disabled].'
1715
1427
  },
1716
1428
  :'instrumentation.memcache' => {
1717
- :default => instrumentation_value_of(:disable_dalli),
1718
- :documentation_default => 'auto',
1429
+ :default => 'auto',
1719
1430
  :public => true,
1720
1431
  :type => String,
1721
1432
  :dynamic_name => true,
@@ -1723,7 +1434,7 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
1723
1434
  :description => 'Controls auto-instrumentation of dalli gem for Memcache at start up. May be one of [auto|prepend|chain|disabled].'
1724
1435
  },
1725
1436
  :'instrumentation.memcached' => {
1726
- :default => instrumentation_value_of(:disable_memcached),
1437
+ :default => 'auto',
1727
1438
  :documentation_default => 'auto',
1728
1439
  :public => true,
1729
1440
  :type => String,
@@ -1741,36 +1452,36 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
1741
1452
  :description => 'Controls auto-instrumentation of memcache-client gem for Memcache at start up. May be one of [auto|prepend|chain|disabled].'
1742
1453
  },
1743
1454
  :'instrumentation.mongo' => {
1744
- :default => instrumentation_value_of(:disable_mongo),
1455
+ :default => 'enabled',
1745
1456
  :documentation_default => 'enabled',
1746
- :public => :true,
1457
+ :public => true,
1747
1458
  :type => String,
1748
1459
  :dynamic_name => true,
1749
1460
  :allowed_from_server => false,
1750
- :description => "Controls auto-instrumentation of Mongo at start up. May be one of [enabled|disabled]."
1461
+ :description => 'Controls auto-instrumentation of Mongo at start up. May be one of [enabled|disabled].'
1751
1462
  },
1752
1463
  :'instrumentation.net_http' => {
1753
- :default => instrumentation_value_of(:disable_net_http, :prepend_net_instrumentation),
1464
+ :default => 'auto',
1754
1465
  :documentation_default => 'auto',
1755
1466
  :public => true,
1756
1467
  :type => String,
1757
1468
  :dynamic_name => true,
1758
1469
  :allowed_from_server => false,
1759
- :description => "Controls auto-instrumentation of Net::HTTP at start up. May be one of [auto|prepend|chain|disabled]."
1470
+ :description => 'Controls auto-instrumentation of Net::HTTP at start up. May be one of [auto|prepend|chain|disabled].'
1760
1471
  },
1761
1472
  :'instrumentation.puma_rack' => {
1762
- :default => instrumentation_value_of(:disable_puma_rack), # TODO: MAJOR VERSION - change to value_of(:'instrumentation.rack') when we remove :disable_puma_rack in 8.0)
1473
+ :default => value_of(:'instrumentation.rack'),
1763
1474
  :documentation_default => 'auto',
1764
1475
  :public => true,
1765
1476
  :type => String,
1766
1477
  :dynamic_name => true,
1767
1478
  :allowed_from_server => false,
1768
- :description => "Controls auto-instrumentation of Puma::Rack. When enabled, the agent hooks into the " \
1769
- "`to_app` method in Puma::Rack::Builder to find gems to instrument during " \
1770
- "application startup. May be one of [auto|prepend|chain|disabled]."
1479
+ :description => 'Controls auto-instrumentation of Puma::Rack. When enabled, the agent hooks into the ' \
1480
+ '`to_app` method in Puma::Rack::Builder to find gems to instrument during ' \
1481
+ 'application startup. May be one of [auto|prepend|chain|disabled].'
1771
1482
  },
1772
1483
  :'instrumentation.puma_rack_urlmap' => {
1773
- :default => instrumentation_value_of(:disable_puma_rack_urlmap), # TODO: MAJOR VERSION - change to value_of(:'instrumentation.rack_urlmap') when we remove :disable_puma_rack_urlmap in 8.0)
1484
+ :default => value_of(:'instrumentation.rack_urlmap'),
1774
1485
  :documentation_default => 'auto',
1775
1486
  :public => true,
1776
1487
  :type => String,
@@ -1779,18 +1490,18 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
1779
1490
  :description => 'Controls auto-instrumentation of Puma::Rack::URLMap at start up. May be one of [auto|prepend|chain|disabled].'
1780
1491
  },
1781
1492
  :'instrumentation.rack' => {
1782
- :default => instrumentation_value_of(:disable_rack),
1493
+ :default => 'auto',
1783
1494
  :documentation_default => 'auto',
1784
1495
  :public => true,
1785
1496
  :type => String,
1786
1497
  :dynamic_name => true,
1787
1498
  :allowed_from_server => false,
1788
- :description => "Controls auto-instrumentation of Rack. When enabled, the agent hooks into the " \
1789
- "`to_app` method in Rack::Builder to find gems to instrument during " \
1790
- "application startup. May be one of [auto|prepend|chain|disabled]."
1499
+ :description => 'Controls auto-instrumentation of Rack. When enabled, the agent hooks into the ' \
1500
+ '`to_app` method in Rack::Builder to find gems to instrument during ' \
1501
+ 'application startup. May be one of [auto|prepend|chain|disabled].'
1791
1502
  },
1792
1503
  :'instrumentation.rack_urlmap' => {
1793
- :default => instrumentation_value_of(:disable_rack_urlmap),
1504
+ :default => 'auto',
1794
1505
  :documentation_default => 'auto',
1795
1506
  :public => true,
1796
1507
  :type => String,
@@ -1799,40 +1510,37 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
1799
1510
  :description => 'Controls auto-instrumentation of Rack::URLMap at start up. May be one of [auto|prepend|chain|disabled].'
1800
1511
  },
1801
1512
  :'instrumentation.rake' => {
1802
- :default => instrumentation_value_of(:disable_rake),
1803
- :documentation_default => 'auto',
1804
- :public => :true,
1513
+ :default => 'auto',
1514
+ :public => true,
1805
1515
  :type => String,
1806
1516
  :dynamic_name => true,
1807
1517
  :allowed_from_server => false,
1808
- :description => "Controls auto-instrumentation of rake at start up. May be one of [auto|prepend|chain|disabled]."
1518
+ :description => 'Controls auto-instrumentation of rake at start up. May be one of [auto|prepend|chain|disabled].'
1809
1519
  },
1810
1520
  :'instrumentation.redis' => {
1811
- :default => instrumentation_value_of(:disable_redis),
1812
- :documentation_default => 'auto',
1521
+ :default => 'auto',
1813
1522
  :public => true,
1814
1523
  :type => String,
1815
1524
  :dynamic_name => true,
1816
1525
  :allowed_from_server => false,
1817
- :description => "Controls auto-instrumentation of Redis at start up. May be one of [auto|prepend|chain|disabled]."
1526
+ :description => 'Controls auto-instrumentation of Redis at start up. May be one of [auto|prepend|chain|disabled].'
1818
1527
  },
1819
1528
  :'instrumentation.resque' => {
1820
- :default => instrumentation_value_of(:disable_resque),
1529
+ :default => 'auto',
1821
1530
  :documentation_default => 'auto',
1822
1531
  :public => true,
1823
1532
  :type => String,
1824
1533
  :dynamic_name => true,
1825
1534
  :allowed_from_server => false,
1826
- :description => "Controls auto-instrumentation of resque at start up. May be one of [auto|prepend|chain|disabled]."
1535
+ :description => 'Controls auto-instrumentation of resque at start up. May be one of [auto|prepend|chain|disabled].'
1827
1536
  },
1828
1537
  :'instrumentation.sinatra' => {
1829
- :default => instrumentation_value_of(:disable_sinatra),
1830
- :documentation_default => 'auto',
1831
- :public => :true,
1538
+ :default => 'auto',
1539
+ :public => true,
1832
1540
  :type => String,
1833
1541
  :dynamic_name => true,
1834
1542
  :allowed_from_server => false,
1835
- :description => "Controls auto-instrumentation of Sinatra at start up. May be one of [auto|prepend|chain|disabled]."
1543
+ :description => 'Controls auto-instrumentation of Sinatra at start up. May be one of [auto|prepend|chain|disabled].'
1836
1544
  },
1837
1545
  :'instrumentation.thread' => {
1838
1546
  :default => 'auto',
@@ -1840,24 +1548,24 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
1840
1548
  :type => String,
1841
1549
  :dynamic_name => true,
1842
1550
  :allowed_from_server => false,
1843
- :description => "Controls auto-instrumentation of the Thread class at start up to allow the agent to correctly nest spans inside of an asynchronous transaction. This does not enable the agent to automatically trace all threads created (see `instrumentation.thread.tracing`). May be one of [auto|prepend|chain|disabled]."
1551
+ :description => 'Controls auto-instrumentation of the Thread class at start up to allow the agent to correctly nest spans inside of an asynchronous transaction. This does not enable the agent to automatically trace all threads created (see `instrumentation.thread.tracing`). May be one of [auto|prepend|chain|disabled].'
1844
1552
  },
1845
1553
  :'instrumentation.thread.tracing' => {
1846
- :default => false,
1554
+ :default => true,
1847
1555
  :public => true,
1848
1556
  :type => Boolean,
1849
1557
  :allowed_from_server => false,
1850
- :description => "Controls auto-instrumentation of the Thread class at start up to automatically add tracing to all Threads created in the application."
1558
+ :description => 'Controls auto-instrumentation of the Thread class at start up to automatically add tracing to all Threads created in the application.'
1851
1559
  },
1852
1560
  :'thread_ids_enabled' => {
1853
1561
  :default => false,
1854
1562
  :public => false,
1855
1563
  :type => Boolean,
1856
1564
  :allowed_from_server => false,
1857
- :description => "If enabled, will append the current Thread and Fiber object ids onto the segment names of segments created in Threads and concurrent-ruby"
1565
+ :description => 'If enabled, will append the current Thread and Fiber object ids onto the segment names of segments created in Threads and concurrent-ruby'
1858
1566
  },
1859
1567
  :'instrumentation.tilt' => {
1860
- :default => "auto",
1568
+ :default => 'auto',
1861
1569
  :public => true,
1862
1570
  :type => String,
1863
1571
  :dynamic_name => true,
@@ -1865,13 +1573,13 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
1865
1573
  :description => 'Controls auto-instrumentation of the Tilt template rendering library at start up. May be one of [auto|prepend|chain|disabled].'
1866
1574
  },
1867
1575
  :'instrumentation.typhoeus' => {
1868
- :default => instrumentation_value_of(:disable_typhoeus),
1576
+ :default => 'auto',
1869
1577
  :documentation_default => 'auto',
1870
1578
  :public => true,
1871
1579
  :type => String,
1872
1580
  :dynamic_name => true,
1873
1581
  :allowed_from_server => false,
1874
- :description => "Controls auto-instrumentation of Typhoeus at start up. May be one of [auto|prepend|chain|disabled]."
1582
+ :description => 'Controls auto-instrumentation of Typhoeus at start up. May be one of [auto|prepend|chain|disabled].'
1875
1583
  },
1876
1584
  # Message tracer
1877
1585
  :'message_tracer.segment_parameters.enabled' => {
@@ -1907,12 +1615,17 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
1907
1615
  # Rails
1908
1616
  :'defer_rails_initialization' => {
1909
1617
  :default => false,
1910
- :public => false,
1618
+ :public => true,
1911
1619
  :type => Boolean,
1620
+ :external => true, # this config is used directly from the ENV variables
1912
1621
  :allowed_from_server => false,
1913
- :description => 'This configuration option is currently unreachable. Please do not use. ' \
1914
- 'If `true`, when the agent is in an application using Ruby on Rails, it will start after ' \
1915
- 'config/initializers have run.'
1622
+ :description => <<-DESCRIPTION
1623
+ If `true`, when the agent is in an application using Ruby on Rails, it will start after `config/initializers` run.
1624
+
1625
+ <Callout variant="caution">
1626
+ This option may only be set by environment variable.
1627
+ </Callout>
1628
+ DESCRIPTION
1916
1629
  },
1917
1630
  # Rake
1918
1631
  :'rake.tasks' => {
@@ -1934,16 +1647,6 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
1934
1647
  :allowed_from_server => false,
1935
1648
  :description => 'Timeout for waiting on connect to complete before a rake task'
1936
1649
  },
1937
- # Resque
1938
- :'resque.capture_params' => {
1939
- :default => false,
1940
- :public => true,
1941
- :type => Boolean,
1942
- :allowed_from_server => false,
1943
- :dynamic_name => true,
1944
- :deprecated => true,
1945
- :description => 'If `true`, enables the capture of job arguments for transaction traces and traced errors in Resque.'
1946
- },
1947
1650
  # Rules
1948
1651
  :'rules.ignore_url_regexes' => {
1949
1652
  :default => [],
@@ -1953,16 +1656,6 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
1953
1656
  :transform => DefaultSource.method(:convert_to_regexp_list),
1954
1657
  :description => 'Define transactions you want the agent to ignore, by specifying a list of patterns matching the URI you want to ignore. For more detail, see [the docs on ignoring specific transactions](/docs/agents/ruby-agent/api-guides/ignoring-specific-transactions/#config-ignoring).'
1955
1658
  },
1956
- # Sidekiq
1957
- :'sidekiq.capture_params' => {
1958
- :default => false,
1959
- :public => true,
1960
- :type => Boolean,
1961
- :allowed_from_server => false,
1962
- :dynamic_name => true,
1963
- :deprecated => true,
1964
- :description => 'If `true`, enables the capture of job arguments for transaction traces and traced errors in Sidekiq.'
1965
- },
1966
1659
  # Slow SQL
1967
1660
  :'slow_sql.enabled' => {
1968
1661
  :default => value_of(:'transaction_tracer.enabled'),
@@ -2017,7 +1710,7 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
2017
1710
  :type => Integer,
2018
1711
  :allowed_from_server => false,
2019
1712
  :external => :infinite_tracing,
2020
- :description => "Sets the maximum number of span events to buffer when streaming to the trace observer."
1713
+ :description => 'Sets the maximum number of span events to buffer when streaming to the trace observer.'
2021
1714
  },
2022
1715
  :'span_events.max_samples_stored' => {
2023
1716
  :default => 2000,
@@ -2151,7 +1844,7 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
2151
1844
  :description => 'Real user monitoring license key for the browser timing header.'
2152
1845
  },
2153
1846
  :'browser_monitoring.loader' => {
2154
- :default => DefaultSource.browser_monitoring_loader,
1847
+ :default => 'rum',
2155
1848
  :public => false,
2156
1849
  :type => String,
2157
1850
  :allowed_from_server => true,
@@ -2207,15 +1900,6 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
2207
1900
  :allowed_from_server => true,
2208
1901
  :description => 'Number of seconds betwixt connections to the New Relic data collection service.'
2209
1902
  },
2210
- :disable_grape_instrumentation => {
2211
- :default => false,
2212
- :public => false,
2213
- :type => Boolean,
2214
- :allowed_from_server => false,
2215
- :deprecated => true,
2216
- :description => deprecated_description(:'instrumentation.grape',
2217
- 'If `true`, the agent won\'t install Grape instrumentation.')
2218
- },
2219
1903
  :dispatcher => {
2220
1904
  :default => DefaultSource.dispatcher,
2221
1905
  :public => false,
@@ -2237,31 +1921,6 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
2237
1921
  :allowed_from_server => false,
2238
1922
  :description => 'Internal name for controlling Rails 3+ middleware instrumentation'
2239
1923
  },
2240
- :disable_rake_instrumentation => {
2241
- :default => false,
2242
- :public => false,
2243
- :type => Boolean,
2244
- :allowed_from_server => false,
2245
- :deprecated => true,
2246
- :description => deprecated_description(:'instrumentation.rake', 'Enable or disable Rake instrumentation. Preferred key is `disable_rake`')
2247
- },
2248
- :disable_redis_instrumentation => {
2249
- :default => false,
2250
- :public => false,
2251
- :type => Boolean,
2252
- :deprecated => true,
2253
- :allowed_from_server => false,
2254
- :description => deprecated_description(:'instrumentation.redis', 'Disables installation of Redis instrumentation. Standard key to use is disable_redis.')
2255
- },
2256
- :cross_application_tracing => {
2257
- :default => nil,
2258
- :allow_nil => true,
2259
- :public => false,
2260
- :type => Boolean,
2261
- :allowed_from_server => false,
2262
- :deprecated => true,
2263
- :description => 'Deprecated in favor of distributed_tracing.enabled'
2264
- },
2265
1924
  :enabled => {
2266
1925
  :default => true,
2267
1926
  :public => false,
@@ -2299,17 +1958,8 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
2299
1958
  :allowed_from_server => true,
2300
1959
  :description => 'Number of seconds betwixt connections to the New Relic event collection services.'
2301
1960
  },
2302
- :'event_report_period.analytic_event_data' => {
2303
- :default => 60,
2304
- :public => false,
2305
- :type => Integer,
2306
- :dynamic_name => true,
2307
- :deprecated => true,
2308
- :allowed_from_server => true,
2309
- :description => deprecated_description(:'event_report_period.transaction_event_data', 'Number of seconds betwixt connections to the New Relic transaction event collection services.')
2310
- },
2311
1961
  :'event_report_period.transaction_event_data' => {
2312
- :default => value_of(:'event_report_period.analytic_event_data'),
1962
+ :default => 60,
2313
1963
  :public => false,
2314
1964
  :type => Integer,
2315
1965
  :dynamic_name => true,
@@ -2367,7 +2017,7 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
2367
2017
  :public => false,
2368
2018
  :type => String,
2369
2019
  :allowed_from_server => false,
2370
- :description => "URI for the New Relic data collection service."
2020
+ :description => 'URI for the New Relic data collection service.'
2371
2021
  },
2372
2022
  :'infinite_tracing.batching' => {
2373
2023
  :default => true,
@@ -2376,7 +2026,7 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
2376
2026
  :allowed_from_server => false,
2377
2027
  :external => :infinite_tracing,
2378
2028
  :description => "If `true` (the default), data sent to the trace observer is batched\ninstead of sending " \
2379
- "each span individually."
2029
+ 'each span individually.'
2380
2030
  },
2381
2031
  :'infinite_tracing.compression_level' => {
2382
2032
  :default => :high,
@@ -2401,14 +2051,6 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
2401
2051
  :allowed_from_server => true,
2402
2052
  :description => 'JavaScript agent loader content.'
2403
2053
  },
2404
- :js_errors_beta => {
2405
- :default => false,
2406
- :public => false,
2407
- :type => Boolean,
2408
- :allowed_from_server => false,
2409
- :deprecated => true,
2410
- :description => 'Enable or disable beta JavaScript error reporting.'
2411
- },
2412
2054
  :keep_alive_timeout => {
2413
2055
  :default => 60,
2414
2056
  :public => false,
@@ -2416,14 +2058,6 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
2416
2058
  :allowed_from_server => true,
2417
2059
  :description => 'Timeout for keep alive on TCP connection to collector if supported by Ruby version. Only used in conjunction when aggressive_keepalive is enabled.'
2418
2060
  },
2419
- :keep_retrying => {
2420
- :default => true,
2421
- :public => false,
2422
- :type => Boolean,
2423
- :deprecated => true,
2424
- :allowed_from_server => false,
2425
- :description => 'Enable or disable retrying failed connections to the New Relic data collection service.'
2426
- },
2427
2061
  :max_payload_size_in_bytes => {
2428
2062
  :default => 1000000,
2429
2063
  :public => false,
@@ -2445,15 +2079,6 @@ If `true`, disables agent middleware for Sinatra. This middleware is responsible
2445
2079
  :allowed_from_server => false,
2446
2080
  :description => 'Port for the New Relic data collection service.'
2447
2081
  },
2448
- :prepend_net_instrumentation => {
2449
- :default => true,
2450
- :public => false,
2451
- :type => Boolean,
2452
- :allowed_from_server => false,
2453
- :deprecated => true,
2454
- :description => deprecated_description(:'instrumentation.net_http',
2455
- 'If `true`, uses `Module#prepend` rather than alias_method for Net::HTTP instrumentation.')
2456
- },
2457
2082
  :primary_application_id => {
2458
2083
  :default => nil,
2459
2084
  :allow_nil => true,