wd_newrelic_rpm 3.3.4.1 → 3.5.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (290) hide show
  1. data/.gitignore +20 -0
  2. data/.project +23 -0
  3. data/.travis.yml +9 -0
  4. data/CHANGELOG +317 -39
  5. data/GUIDELINES_FOR_CONTRIBUTING.md +76 -0
  6. data/Gemfile +16 -0
  7. data/LICENSE +1 -1
  8. data/{README.rdoc → README.md} +71 -55
  9. data/Rakefile +62 -0
  10. data/bin/mongrel_rpm +1 -1
  11. data/config.dot +290 -0
  12. data/config/database.yml +5 -0
  13. data/init.rb +31 -0
  14. data/lib/new_relic/agent.rb +31 -60
  15. data/lib/new_relic/agent/agent.rb +277 -502
  16. data/lib/new_relic/agent/agent_logger.rb +165 -0
  17. data/lib/new_relic/agent/audit_logger.rb +72 -0
  18. data/lib/new_relic/agent/beacon_configuration.rb +36 -50
  19. data/lib/new_relic/agent/browser_monitoring.rb +114 -61
  20. data/lib/new_relic/agent/busy_calculator.rb +14 -6
  21. data/lib/new_relic/agent/configuration.rb +74 -0
  22. data/lib/new_relic/agent/configuration/defaults.rb +126 -0
  23. data/lib/new_relic/agent/configuration/environment_source.rb +49 -0
  24. data/lib/new_relic/agent/configuration/manager.rb +136 -0
  25. data/lib/new_relic/agent/configuration/mask_defaults.rb +10 -0
  26. data/lib/new_relic/agent/configuration/server_source.rb +27 -0
  27. data/lib/new_relic/agent/configuration/yaml_source.rb +63 -0
  28. data/lib/new_relic/agent/cross_process_monitoring.rb +43 -0
  29. data/lib/new_relic/agent/database.rb +39 -26
  30. data/lib/new_relic/agent/error_collector.rb +48 -49
  31. data/lib/new_relic/agent/instrumentation/active_merchant.rb +1 -1
  32. data/lib/new_relic/agent/instrumentation/active_record.rb +4 -7
  33. data/lib/new_relic/agent/instrumentation/acts_as_solr.rb +1 -1
  34. data/lib/new_relic/agent/instrumentation/authlogic.rb +1 -1
  35. data/lib/new_relic/agent/instrumentation/browser_monitoring_timings.rb +41 -0
  36. data/lib/new_relic/agent/instrumentation/controller_instrumentation.rb +35 -12
  37. data/lib/new_relic/agent/instrumentation/data_mapper.rb +4 -12
  38. data/lib/new_relic/agent/instrumentation/delayed_job_instrumentation.rb +2 -2
  39. data/lib/new_relic/agent/instrumentation/memcache.rb +6 -6
  40. data/lib/new_relic/agent/instrumentation/merb/controller.rb +1 -1
  41. data/lib/new_relic/agent/instrumentation/merb/errors.rb +1 -1
  42. data/lib/new_relic/agent/instrumentation/metric_frame.rb +4 -14
  43. data/lib/new_relic/agent/instrumentation/metric_frame/pop.rb +1 -1
  44. data/lib/new_relic/agent/instrumentation/net.rb +1 -1
  45. data/lib/new_relic/agent/instrumentation/passenger_instrumentation.rb +6 -20
  46. data/lib/new_relic/agent/instrumentation/queue_time.rb +2 -2
  47. data/lib/new_relic/agent/instrumentation/rack.rb +1 -1
  48. data/lib/new_relic/agent/instrumentation/rails/action_controller.rb +7 -7
  49. data/lib/new_relic/agent/instrumentation/rails/action_web_service.rb +1 -1
  50. data/lib/new_relic/agent/instrumentation/rails/errors.rb +1 -1
  51. data/lib/new_relic/agent/instrumentation/rails3/action_controller.rb +5 -5
  52. data/lib/new_relic/agent/instrumentation/rails3/errors.rb +6 -2
  53. data/lib/new_relic/agent/instrumentation/resque.rb +81 -0
  54. data/lib/new_relic/agent/instrumentation/sinatra.rb +21 -10
  55. data/lib/new_relic/agent/instrumentation/sunspot.rb +1 -1
  56. data/lib/new_relic/agent/instrumentation/unicorn_instrumentation.rb +5 -4
  57. data/lib/new_relic/agent/method_tracer.rb +11 -9
  58. data/lib/new_relic/agent/new_relic_service.rb +379 -0
  59. data/lib/new_relic/agent/pipe_channel_manager.rb +175 -0
  60. data/lib/new_relic/agent/pipe_service.rb +58 -0
  61. data/lib/new_relic/agent/samplers/delayed_job_sampler.rb +86 -0
  62. data/lib/new_relic/agent/samplers/memory_sampler.rb +6 -8
  63. data/lib/new_relic/agent/sql_sampler.rb +31 -74
  64. data/lib/new_relic/agent/stats_engine.rb +0 -5
  65. data/lib/new_relic/agent/stats_engine/gc_profiler.rb +40 -24
  66. data/lib/new_relic/agent/stats_engine/metric_stats.rb +89 -14
  67. data/lib/new_relic/agent/stats_engine/samplers.rb +9 -7
  68. data/lib/new_relic/agent/stats_engine/transactions.rb +20 -12
  69. data/lib/new_relic/agent/thread.rb +32 -0
  70. data/lib/new_relic/agent/thread_profiler.rb +306 -0
  71. data/lib/new_relic/agent/transaction_info.rb +24 -4
  72. data/lib/new_relic/agent/transaction_sample_builder.rb +12 -13
  73. data/lib/new_relic/agent/transaction_sampler.rb +49 -65
  74. data/lib/new_relic/agent/worker_loop.rb +31 -25
  75. data/lib/new_relic/collection_helper.rb +1 -1
  76. data/lib/new_relic/commands/deployments.rb +19 -10
  77. data/lib/new_relic/control.rb +1 -3
  78. data/lib/new_relic/control/class_methods.rb +10 -5
  79. data/lib/new_relic/control/frameworks/merb.rb +0 -6
  80. data/lib/new_relic/control/frameworks/rails.rb +30 -45
  81. data/lib/new_relic/control/frameworks/rails3.rb +23 -18
  82. data/lib/new_relic/control/frameworks/rails4.rb +23 -0
  83. data/lib/new_relic/control/frameworks/ruby.rb +2 -23
  84. data/lib/new_relic/control/instance_methods.rb +35 -73
  85. data/lib/new_relic/control/instrumentation.rb +7 -12
  86. data/lib/new_relic/control/server_methods.rb +17 -19
  87. data/lib/new_relic/delayed_job_injection.rb +2 -2
  88. data/lib/new_relic/helper.rb +34 -0
  89. data/lib/new_relic/language_support.rb +56 -37
  90. data/lib/new_relic/local_environment.rb +32 -67
  91. data/lib/new_relic/metric_data.rb +10 -2
  92. data/lib/new_relic/metric_spec.rb +7 -3
  93. data/lib/new_relic/noticed_error.rb +32 -9
  94. data/lib/new_relic/rack.rb +4 -0
  95. data/lib/new_relic/rack/browser_monitoring.rb +34 -25
  96. data/lib/new_relic/rack/developer_mode.rb +3 -0
  97. data/lib/new_relic/rack/error_collector.rb +56 -0
  98. data/lib/new_relic/stats.rb +9 -7
  99. data/lib/new_relic/transaction_sample.rb +19 -18
  100. data/lib/new_relic/transaction_sample/segment.rb +13 -15
  101. data/lib/new_relic/version.rb +19 -3
  102. data/lib/newrelic_rpm.rb +1 -1
  103. data/lib/tasks/tests.rake +6 -8
  104. data/newrelic.yml +15 -32
  105. data/newrelic_rpm.gemspec +224 -43
  106. data/newrelic_rpm.gemspec.erb +54 -0
  107. data/test/config/newrelic.yml +4 -3
  108. data/test/config/test_control.rb +18 -18
  109. data/test/fixtures/gemspec_no_build.rb +442 -0
  110. data/test/fixtures/gemspec_with_build.rb +442 -0
  111. data/test/fixtures/gemspec_with_build_and_stage.rb +442 -0
  112. data/test/intentional_fail.rb +10 -0
  113. data/test/multiverse/.gitignore +10 -0
  114. data/test/multiverse/README.md +85 -0
  115. data/test/multiverse/lib/multiverse/color.rb +13 -0
  116. data/test/multiverse/lib/multiverse/envfile.rb +66 -0
  117. data/test/multiverse/lib/multiverse/environment.rb +16 -0
  118. data/test/multiverse/lib/multiverse/output_collector.rb +29 -0
  119. data/test/multiverse/lib/multiverse/runner.rb +44 -0
  120. data/test/multiverse/lib/multiverse/suite.rb +162 -0
  121. data/test/multiverse/script/run_one +3 -0
  122. data/test/multiverse/script/runner +9 -0
  123. data/test/multiverse/suites/active_record/Envfile +13 -0
  124. data/test/multiverse/suites/active_record/ar_method_aliasing.rb +94 -0
  125. data/test/multiverse/suites/active_record/config/newrelic.yml +22 -0
  126. data/test/multiverse/suites/active_record/encoding_test.rb +26 -0
  127. data/test/multiverse/suites/agent_only/Envfile +4 -0
  128. data/test/multiverse/suites/agent_only/audit_log_test.rb +99 -0
  129. data/test/multiverse/suites/agent_only/config/newrelic.yml +22 -0
  130. data/test/multiverse/suites/agent_only/http_response_code_test.rb +53 -0
  131. data/test/multiverse/suites/agent_only/marshaling_test.rb +109 -0
  132. data/test/multiverse/suites/agent_only/method_visibility_test.rb +98 -0
  133. data/test/multiverse/suites/agent_only/pipe_manager_test.rb +33 -0
  134. data/test/multiverse/suites/agent_only/service_timeout_test.rb +29 -0
  135. data/test/multiverse/suites/agent_only/test_trace_method_with_punctuation.rb +30 -0
  136. data/test/multiverse/suites/agent_only/test_trace_transaction_with_punctuation.rb +32 -0
  137. data/test/multiverse/suites/agent_only/thread_profiling_test.rb +80 -0
  138. data/test/multiverse/suites/config_file_loading/Envfile +7 -0
  139. data/test/multiverse/suites/config_file_loading/config_file_loading_test.rb +106 -0
  140. data/test/multiverse/suites/datamapper/Envfile +8 -0
  141. data/test/multiverse/suites/datamapper/config/newrelic.yml +22 -0
  142. data/test/multiverse/suites/datamapper/encoding_test.rb +36 -0
  143. data/test/multiverse/suites/logging/Envfile +4 -0
  144. data/test/multiverse/suites/logging/config/newrelic.yml +22 -0
  145. data/test/multiverse/suites/logging/logging_test.rb +143 -0
  146. data/test/multiverse/suites/monitor_mode_false/Envfile +2 -0
  147. data/test/multiverse/suites/monitor_mode_false/config/newrelic.yml +25 -0
  148. data/test/multiverse/suites/monitor_mode_false/no_dns_resolv.rb +29 -0
  149. data/test/multiverse/suites/no_load/Envfile +2 -0
  150. data/test/multiverse/suites/no_load/config/newrelic.yml +22 -0
  151. data/test/multiverse/suites/no_load/start_up_test.rb +14 -0
  152. data/test/multiverse/suites/rails_3_error_tracing/Envfile +15 -0
  153. data/test/multiverse/suites/rails_3_error_tracing/config/newrelic.yml +165 -0
  154. data/test/multiverse/suites/rails_3_error_tracing/error_tracing_test.rb +236 -0
  155. data/test/multiverse/suites/rails_3_gc/Envfile +8 -0
  156. data/test/multiverse/suites/rails_3_gc/config/newrelic.yml +167 -0
  157. data/test/multiverse/suites/rails_3_gc/instrumentation_test.rb +92 -0
  158. data/test/multiverse/suites/rails_3_queue_time/Envfile +15 -0
  159. data/test/multiverse/suites/rails_3_queue_time/config/newrelic.yml +165 -0
  160. data/test/multiverse/suites/rails_3_queue_time/queue_time_test.rb +75 -0
  161. data/test/multiverse/suites/rails_3_views/.gitignore +3 -0
  162. data/test/multiverse/suites/rails_3_views/Envfile +16 -0
  163. data/test/multiverse/suites/rails_3_views/app/views/foos/_foo.html.haml +1 -0
  164. data/test/multiverse/suites/rails_3_views/app/views/test/_a_partial.html.erb +1 -0
  165. data/test/multiverse/suites/rails_3_views/app/views/test/_mid_partial.html.erb +1 -0
  166. data/test/multiverse/suites/rails_3_views/app/views/test/_top_partial.html.erb +3 -0
  167. data/test/multiverse/suites/rails_3_views/app/views/test/deep_partial.html.erb +3 -0
  168. data/test/multiverse/suites/rails_3_views/app/views/test/haml_view.html.haml +6 -0
  169. data/test/multiverse/suites/rails_3_views/app/views/test/index.html.erb +4 -0
  170. data/test/multiverse/suites/rails_3_views/config/newrelic.yml +164 -0
  171. data/test/multiverse/suites/rails_3_views/view_instrumentation_test.rb +245 -0
  172. data/test/multiverse/suites/resque/Envfile +21 -0
  173. data/test/multiverse/suites/resque/config/newrelic.yml +22 -0
  174. data/test/multiverse/suites/resque/dump.rdb +0 -0
  175. data/test/multiverse/suites/resque/instrumentation_test.rb +73 -0
  176. data/test/multiverse/suites/rum_auto_instrumentation/Envfile +4 -0
  177. data/test/multiverse/suites/rum_auto_instrumentation/config/newrelic.yml +24 -0
  178. data/test/multiverse/suites/rum_auto_instrumentation/responses/worst_case_small.html +5000 -0
  179. data/test/multiverse/suites/rum_auto_instrumentation/sanity_test.rb +102 -0
  180. data/test/multiverse/suites/sinatra/Envfile +13 -0
  181. data/test/multiverse/suites/sinatra/config/newrelic.yml +24 -0
  182. data/test/multiverse/suites/sinatra/sinatra_metric_explosion_test.rb +77 -0
  183. data/test/multiverse/suites/sinatra/sinatra_routes_test.rb +46 -0
  184. data/test/multiverse/suites/sinatra/sinatra_test.rb +55 -0
  185. data/test/multiverse/test/multiverse_test.rb +55 -0
  186. data/test/multiverse/test/suite_examples/one/a/Envfile +3 -0
  187. data/test/multiverse/test/suite_examples/one/a/a_test.rb +11 -0
  188. data/test/multiverse/test/suite_examples/one/a/config/newrelic.yml +24 -0
  189. data/test/multiverse/test/suite_examples/one/b/Envfile +3 -0
  190. data/test/multiverse/test/suite_examples/one/b/b_test.rb +11 -0
  191. data/test/multiverse/test/suite_examples/one/b/config/newrelic.yml +24 -0
  192. data/test/multiverse/test/suite_examples/three/a/Envfile +2 -0
  193. data/test/multiverse/test/suite_examples/three/a/fail_test.rb +6 -0
  194. data/test/multiverse/test/suite_examples/three/b/Envfile +2 -0
  195. data/test/multiverse/test/suite_examples/three/b/win_test.rb +6 -0
  196. data/test/multiverse/test/suite_examples/two/a/Envfile +1 -0
  197. data/test/multiverse/test/suite_examples/two/a/fail_test.rb +6 -0
  198. data/test/new_relic/agent/agent/connect_test.rb +151 -227
  199. data/test/new_relic/agent/agent/start_test.rb +68 -118
  200. data/test/new_relic/agent/agent/start_worker_thread_test.rb +12 -74
  201. data/test/new_relic/agent/agent_logger_test.rb +153 -0
  202. data/test/new_relic/agent/agent_test.rb +116 -30
  203. data/test/new_relic/agent/agent_test_controller.rb +1 -1
  204. data/test/new_relic/agent/agent_test_controller_test.rb +42 -10
  205. data/test/new_relic/agent/audit_logger_test.rb +105 -0
  206. data/test/new_relic/agent/beacon_configuration_test.rb +63 -67
  207. data/test/new_relic/agent/browser_monitoring_test.rb +151 -79
  208. data/test/new_relic/agent/busy_calculator_test.rb +7 -0
  209. data/test/new_relic/agent/configuration/environment_source_test.rb +79 -0
  210. data/test/new_relic/agent/configuration/manager_test.rb +204 -0
  211. data/test/new_relic/agent/configuration/server_source_test.rb +45 -0
  212. data/test/new_relic/agent/configuration/yaml_source_test.rb +75 -0
  213. data/test/new_relic/agent/cross_process_monitoring_test.rb +77 -0
  214. data/test/new_relic/agent/database_test.rb +12 -11
  215. data/test/new_relic/agent/error_collector/notice_error_test.rb +64 -53
  216. data/test/new_relic/agent/error_collector_test.rb +33 -19
  217. data/test/new_relic/agent/instrumentation/active_record_instrumentation_test.rb +60 -30
  218. data/test/new_relic/agent/instrumentation/browser_monitoring_timings_test.rb +39 -0
  219. data/test/new_relic/agent/instrumentation/metric_frame/pop_test.rb +1 -1
  220. data/test/new_relic/agent/instrumentation/metric_frame_test.rb +6 -0
  221. data/test/new_relic/agent/instrumentation/queue_time_test.rb +14 -0
  222. data/test/new_relic/agent/instrumentation/sinatra_test.rb +25 -0
  223. data/test/new_relic/agent/instrumentation/task_instrumentation_test.rb +2 -2
  224. data/test/new_relic/agent/method_tracer/class_methods/add_method_tracer_test.rb +4 -10
  225. data/test/new_relic/agent/method_tracer/instance_methods/trace_execution_scoped_test.rb +3 -15
  226. data/test/new_relic/agent/method_tracer_test.rb +7 -6
  227. data/test/new_relic/agent/mock_scope_listener.rb +3 -0
  228. data/test/new_relic/agent/new_relic_service_test.rb +376 -0
  229. data/test/new_relic/agent/pipe_channel_manager_test.rb +131 -0
  230. data/test/new_relic/agent/pipe_service_test.rb +113 -0
  231. data/test/new_relic/agent/rpm_agent_test.rb +27 -50
  232. data/test/new_relic/agent/sql_sampler_test.rb +81 -56
  233. data/test/new_relic/agent/stats_engine/metric_stats/harvest_test.rb +3 -20
  234. data/test/new_relic/agent/stats_engine/metric_stats_test.rb +12 -1
  235. data/test/new_relic/agent/stats_engine_test.rb +17 -8
  236. data/test/new_relic/agent/thread_profiler_test.rb +537 -0
  237. data/test/new_relic/agent/thread_test.rb +89 -0
  238. data/test/new_relic/agent/threaded_test.rb +65 -0
  239. data/test/new_relic/agent/transaction_info_test.rb +45 -4
  240. data/test/new_relic/agent/transaction_sample_builder_test.rb +8 -7
  241. data/test/new_relic/agent/transaction_sampler_test.rb +193 -204
  242. data/test/new_relic/agent/worker_loop_test.rb +26 -11
  243. data/test/new_relic/agent_test.rb +113 -33
  244. data/test/new_relic/collection_helper_test.rb +7 -8
  245. data/test/new_relic/command/deployments_test.rb +18 -2
  246. data/test/new_relic/control/class_methods_test.rb +0 -18
  247. data/test/new_relic/control/frameworks/rails_test.rb +26 -0
  248. data/test/new_relic/control_test.rb +96 -137
  249. data/test/new_relic/delayed_job_injection_test.rb +6 -1
  250. data/test/new_relic/dispatcher_test.rb +54 -0
  251. data/test/new_relic/fake_collector.rb +283 -0
  252. data/test/new_relic/fake_service.rb +53 -0
  253. data/test/new_relic/fakes_sending_data.rb +30 -0
  254. data/test/new_relic/framework_test.rb +53 -0
  255. data/test/new_relic/load_test.rb +13 -0
  256. data/test/new_relic/local_environment_test.rb +11 -11
  257. data/test/new_relic/metric_data_test.rb +45 -16
  258. data/test/new_relic/noticed_error_test.rb +24 -0
  259. data/test/new_relic/rack/browser_monitoring_test.rb +20 -10
  260. data/test/new_relic/rack/developer_mode_test.rb +13 -7
  261. data/test/new_relic/rack/error_collector_test.rb +74 -0
  262. data/test/new_relic/stats_test.rb +10 -0
  263. data/test/new_relic/transaction_sample/segment_test.rb +23 -4
  264. data/test/new_relic/transaction_sample_test.rb +47 -2
  265. data/test/new_relic/version_number_test.rb +32 -0
  266. data/test/script/build_test_gem.sh +9 -3
  267. data/test/script/ci.sh +108 -35
  268. data/test/script/ci_agent-tests_runner.sh +82 -0
  269. data/test/script/ci_multiverse_runner.sh +63 -0
  270. data/test/test_contexts.rb +1 -0
  271. data/test/test_helper.rb +68 -18
  272. data/ui/helpers/developer_mode_helper.rb +21 -11
  273. data/ui/views/layouts/newrelic_default.rhtml +1 -0
  274. data/ui/views/newrelic/file/images/arrow-close.png +0 -0
  275. data/ui/views/newrelic/file/images/arrow-open.png +0 -0
  276. data/ui/views/newrelic/file/images/blue_bar.gif +0 -0
  277. data/ui/views/newrelic/file/images/file_icon.png +0 -0
  278. data/ui/views/newrelic/file/images/gray_bar.gif +0 -0
  279. data/ui/views/newrelic/show_sample.rhtml +1 -1
  280. data/ui/views/newrelic/threads.rhtml +2 -10
  281. data/vendor/gems/metric_parser-0.1.0.pre1/.specification +116 -0
  282. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/servlet_init.rb +7 -0
  283. metadata +191 -65
  284. data/lib/new_relic/agent/samplers/delayed_job_lock_sampler.rb +0 -40
  285. data/lib/new_relic/control/configuration.rb +0 -206
  286. data/lib/new_relic/control/logging_methods.rb +0 -143
  287. data/lib/new_relic/data_serialization.rb +0 -151
  288. data/test/new_relic/control/configuration_test.rb +0 -84
  289. data/test/new_relic/control/logging_methods_test.rb +0 -185
  290. data/test/new_relic/data_serialization_test.rb +0 -208
data/lib/newrelic_rpm.rb CHANGED
@@ -28,7 +28,7 @@ if defined?(Merb) && defined?(Merb::BootLoader)
28
28
  end
29
29
  end
30
30
  elsif defined? Rails
31
- if Rails.respond_to?(:version) && Rails.version =~ /^3/
31
+ if Rails.respond_to?(:version) && Rails.version > '3'
32
32
  module NewRelic
33
33
  class Railtie < Rails::Railtie
34
34
 
data/lib/tasks/tests.rake CHANGED
@@ -1,19 +1,17 @@
1
- # run unit tests for the NewRelic Agent
2
1
  begin
3
- require 'rake/test_task'
2
+ require 'rake/testtask'
4
3
  rescue LoadError => e
5
4
  end
6
5
 
7
6
  if defined? Rake::TestTask
8
7
  namespace :test do
9
- AGENT_HOME = File.expand_path(File.join(File.dirname(__FILE__), "..",".."))
8
+ agent_home = File.expand_path(File.join(File.dirname(__FILE__),'..','..'))
9
+
10
10
  Rake::TestTask.new(:newrelic) do |t|
11
- t.libs << "#{AGENT_HOME}/test"
12
- t.libs << "#{AGENT_HOME}/lib"
13
- t.pattern = "#{AGENT_HOME}/test/**/*_test.rb"
11
+ t.libs << "#{agent_home}/test"
12
+ t.libs << "#{agent_home}/lib"
13
+ t.pattern = "#{agent_home}/test/new_relic/**/*_test.rb"
14
14
  t.verbose = true
15
15
  end
16
- Rake::Task['test:newrelic'].comment = "Run the unit tests for the Agent"
17
- task :newrelic => :environment
18
16
  end
19
17
  end
data/newrelic.yml CHANGED
@@ -1,7 +1,7 @@
1
1
  #
2
2
  # This file configures the New Relic Ruby Agent, New Relic monitors
3
- # Rails applications with deep visibility and low overhead. For more
4
- # information, visit www.newrelic.com
3
+ # Rails applications with deep visibility and low overhead. For more
4
+ # information, visit www.newrelic.com.
5
5
  #
6
6
  # Generated <%= Time.now.strftime('%B %d, %Y') %>, for version <%= NewRelic::VERSION::STRING %>
7
7
  #
@@ -21,7 +21,7 @@ common: &default_settings
21
21
  # Use this setting to force the agent to run or not run.
22
22
  # Default is 'auto' which means the agent will install and run only
23
23
  # if a valid dispatcher such as Mongrel is running. This prevents
24
- # it from running with Rake or the console. Set to false to
24
+ # it from running with Rake or the console. Set to false to
25
25
  # completely turn the agent off regardless of the other settings.
26
26
  # Valid values are true, false and auto.
27
27
  #
@@ -47,7 +47,7 @@ common: &default_settings
47
47
  # When "true", the agent collects performance data about your
48
48
  # application and reports this data to the New Relic service at
49
49
  # newrelic.com. This global switch is normally overridden for each
50
- # environment below. (formerly called 'enabled')
50
+ # environment below (formerly called 'enabled').
51
51
  monitor_mode: true
52
52
 
53
53
  # Developer mode should be off in every environment but
@@ -55,7 +55,7 @@ common: &default_settings
55
55
  developer_mode: false
56
56
 
57
57
  # The newrelic agent generates its own log file to keep its logging
58
- # information separate from that of your application. Specify its
58
+ # information separate from that of your application. Specify its
59
59
  # log level here.
60
60
  log_level: info
61
61
 
@@ -87,19 +87,7 @@ common: &default_settings
87
87
  # use a non-blocking lookup, so in a worst case, if you have DNS
88
88
  # problems, your app may block indefinitely.
89
89
  # verify_certificate: true
90
-
91
- # Set your application's Apdex threshold value with the 'apdex_t'
92
- # setting, in seconds. The apdex_t value determines the buckets used
93
- # to compute your overall Apdex score.
94
- # Requests that take less than apdex_t seconds to process will be
95
- # classified as Satisfying transactions; more than apdex_t seconds
96
- # as Tolerating transactions; and more than four times the apdex_t
97
- # value as Frustrating transactions.
98
- # For more about the Apdex standard, see
99
- # http://newrelic.com/docs/general/apdex
100
90
 
101
- apdex_t: 0.5
102
-
103
91
  #============================== Browser Monitoring ===============================
104
92
  # New Relic Real User Monitoring gives you insight into the performance real users are
105
93
  # experiencing with your website. This is accomplished by measuring the time it takes for
@@ -113,7 +101,7 @@ common: &default_settings
113
101
  # Proxy settings for connecting to the service.
114
102
  #
115
103
  # If a proxy is used, the host setting is required. Other settings
116
- # are optional. Default port is 8080.
104
+ # are optional. Default port is 8080.
117
105
  #
118
106
  # proxy_host: hostname
119
107
  # proxy_port: 8080
@@ -153,13 +141,13 @@ common: &default_settings
153
141
  # When transaction tracer is on, SQL statements can optionally be
154
142
  # recorded. The recorder has three modes, "off" which sends no
155
143
  # SQL, "raw" which sends the SQL statement in its original form,
156
- # and "obfuscated", which strips out numeric and string literals
144
+ # and "obfuscated", which strips out numeric and string literals.
157
145
  record_sql: obfuscated
158
146
 
159
147
  # Threshold in seconds for when to collect stack trace for a SQL
160
148
  # call. In other words, when SQL statements exceed this threshold,
161
149
  # then capture and send the current stack trace. This is
162
- # helpful for pinpointing where long SQL calls originate from
150
+ # helpful for pinpointing where long SQL calls originate from.
163
151
  stack_trace_threshold: 0.500
164
152
 
165
153
  # Determines whether the agent will capture query plans for slow
@@ -172,12 +160,12 @@ common: &default_settings
172
160
  # explain_threshold: 0.5
173
161
 
174
162
  # Error collector captures information about uncaught exceptions and
175
- # sends them to the service for viewing
163
+ # sends them to the service for viewing.
176
164
  error_collector:
177
165
 
178
166
  # Error collector is enabled by default. Set this to false to turn
179
167
  # it off. This feature is only available at the Professional and above
180
- # product levels
168
+ # product levels.
181
169
  enabled: true
182
170
 
183
171
  # Rails Only - tells error collector whether or not to capture a
@@ -188,12 +176,11 @@ common: &default_settings
188
176
  # To stop specific errors from reporting to New Relic, set this property
189
177
  # to comma separated values. Default is to ignore routing errors
190
178
  # which are how 404's get triggered.
191
- #
192
179
  ignore_errors: ActionController::RoutingError
193
180
 
194
181
  # (Advanced) Uncomment this to ensure the cpu and memory samplers
195
- # won't run. Useful when you are using the agent to monitor an
196
- # external resource
182
+ # won't run. Useful when you are using the agent to monitor an
183
+ # external resource.
197
184
  # disable_samplers: true
198
185
 
199
186
  # If you aren't interested in visibility in these areas, you can
@@ -209,10 +196,6 @@ common: &default_settings
209
196
  # overhead slightly on every memcached call, and can have security
210
197
  # implications if your memcached keys are sensitive
211
198
  # capture_memcache_keys: true
212
-
213
- # Certain types of instrumentation such as GC stats will not work if
214
- # you are running multi-threaded. Please let us know.
215
- # multi_threaded = false
216
199
 
217
200
  # Application Environments
218
201
  # ------------------------------------------
@@ -248,16 +231,16 @@ test:
248
231
  # unit, functional or integration tests or the like.
249
232
  monitor_mode: false
250
233
 
251
- # Turn on the agent in production for 24x7 monitoring. NewRelic
234
+ # Turn on the agent in production for 24x7 monitoring. NewRelic
252
235
  # testing shows an average performance impact of < 5 ms per
253
- # transaction, you you can leave this on all the time without
236
+ # transaction, you can leave this on all the time without
254
237
  # incurring any user-visible performance degradation.
255
238
  production:
256
239
  <<: *default_settings
257
240
  monitor_mode: true
258
241
 
259
242
  # Many applications have a staging environment which behaves
260
- # identically to production. Support for that environment is provided
243
+ # identically to production. Support for that environment is provided
261
244
  # here. By default, the staging environment has the agent turned on.
262
245
  staging:
263
246
  <<: *default_settings
data/newrelic_rpm.gemspec CHANGED
@@ -1,43 +1,68 @@
1
- # Generated by jeweler
2
- # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
- # -*- encoding: utf-8 -*-
1
+ #-*- coding: utf-8 -*-
2
+ # GITSHA: d769e984d9151092265ab37aad04f2f06b6a26ae
5
3
 
6
4
  Gem::Specification.new do |s|
7
5
  s.name = "wd_newrelic_rpm"
8
- s.version = "3.3.4.1"
9
-
10
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Bill Kayser", "Jon Guymon", "Justin George", "Darin Swanson"]
12
- s.date = "2012-04-24"
13
- s.description = "Weasel Diesel compatible version of rpm. New Relic is a performance management system, developed by New Relic,\nInc (http://www.newrelic.com). New Relic provides you with deep\ninformation about the performance of your web application as it runs\nin production. The New Relic Ruby Agent is dual-purposed as a either a\nGem or plugin, hosted on\nhttp://github.com/newrelic/rpm/\n"
6
+ s.version = "3.5.5"
7
+ s.required_rubygems_version = Gem::Requirement.new("> 1.3.1") if s.respond_to? :required_rubygems_version=
8
+ s.authors = [ "Jason Clark", "Sam Goldstein", "Jon Guymon", "Ben Weintraub" ]
9
+ s.date = "2013-01-09"
10
+ s.description = <<-EOS
11
+ Weasel Diesel compatible version of rpm.
12
+ New Relic is a performance management system, developed by New Relic,
13
+ Inc (http://www.newrelic.com). New Relic provides you with deep
14
+ information about the performance of your web application as it runs
15
+ in production. The New Relic Ruby Agent is dual-purposed as a either a
16
+ Gem or plugin, hosted on
17
+ http://github.com/newrelic/rpm/
18
+ EOS
14
19
  s.email = "support@newrelic.com"
15
- s.executables = ["newrelic_cmd", "mongrel_rpm", "newrelic"]
20
+ s.executables = [ "mongrel_rpm", "newrelic_cmd", "newrelic" ]
16
21
  s.extra_rdoc_files = [
17
22
  "CHANGELOG",
18
23
  "LICENSE",
19
- "README.rdoc",
24
+ "README.md",
25
+ "GUIDELINES_FOR_CONTRIBUTING.md",
20
26
  "newrelic.yml"
21
27
  ]
22
28
  s.files = [
29
+ ".gitignore",
30
+ ".project",
31
+ ".travis.yml",
23
32
  "CHANGELOG",
33
+ "GUIDELINES_FOR_CONTRIBUTING.md",
34
+ "Gemfile",
24
35
  "LICENSE",
25
- "README.rdoc",
36
+ "README.md",
37
+ "Rakefile",
26
38
  "bin/mongrel_rpm",
27
39
  "bin/newrelic",
28
40
  "bin/newrelic_cmd",
29
41
  "cert/cacert.pem",
30
42
  "cert/oldsite.pem",
31
43
  "cert/site.pem",
44
+ "config.dot",
45
+ "config/database.yml",
46
+ "init.rb",
32
47
  "install.rb",
33
48
  "lib/conditional_vendored_dependency_detection.rb",
34
49
  "lib/conditional_vendored_metric_parser.rb",
35
50
  "lib/new_relic/agent.rb",
36
51
  "lib/new_relic/agent/agent.rb",
52
+ "lib/new_relic/agent/agent_logger.rb",
53
+ "lib/new_relic/agent/audit_logger.rb",
37
54
  "lib/new_relic/agent/beacon_configuration.rb",
38
55
  "lib/new_relic/agent/browser_monitoring.rb",
39
56
  "lib/new_relic/agent/busy_calculator.rb",
40
57
  "lib/new_relic/agent/chained_call.rb",
58
+ "lib/new_relic/agent/configuration.rb",
59
+ "lib/new_relic/agent/configuration/defaults.rb",
60
+ "lib/new_relic/agent/configuration/environment_source.rb",
61
+ "lib/new_relic/agent/configuration/manager.rb",
62
+ "lib/new_relic/agent/configuration/mask_defaults.rb",
63
+ "lib/new_relic/agent/configuration/server_source.rb",
64
+ "lib/new_relic/agent/configuration/yaml_source.rb",
65
+ "lib/new_relic/agent/cross_process_monitoring.rb",
41
66
  "lib/new_relic/agent/database.rb",
42
67
  "lib/new_relic/agent/error_collector.rb",
43
68
  "lib/new_relic/agent/instrumentation.rb",
@@ -45,6 +70,7 @@ Gem::Specification.new do |s|
45
70
  "lib/new_relic/agent/instrumentation/active_record.rb",
46
71
  "lib/new_relic/agent/instrumentation/acts_as_solr.rb",
47
72
  "lib/new_relic/agent/instrumentation/authlogic.rb",
73
+ "lib/new_relic/agent/instrumentation/browser_monitoring_timings.rb",
48
74
  "lib/new_relic/agent/instrumentation/controller_instrumentation.rb",
49
75
  "lib/new_relic/agent/instrumentation/data_mapper.rb",
50
76
  "lib/new_relic/agent/instrumentation/delayed_job_instrumentation.rb",
@@ -62,13 +88,17 @@ Gem::Specification.new do |s|
62
88
  "lib/new_relic/agent/instrumentation/rails/errors.rb",
63
89
  "lib/new_relic/agent/instrumentation/rails3/action_controller.rb",
64
90
  "lib/new_relic/agent/instrumentation/rails3/errors.rb",
91
+ "lib/new_relic/agent/instrumentation/resque.rb",
65
92
  "lib/new_relic/agent/instrumentation/sinatra.rb",
66
93
  "lib/new_relic/agent/instrumentation/sunspot.rb",
67
94
  "lib/new_relic/agent/instrumentation/unicorn_instrumentation.rb",
68
95
  "lib/new_relic/agent/method_tracer.rb",
96
+ "lib/new_relic/agent/new_relic_service.rb",
97
+ "lib/new_relic/agent/pipe_channel_manager.rb",
98
+ "lib/new_relic/agent/pipe_service.rb",
69
99
  "lib/new_relic/agent/sampler.rb",
70
100
  "lib/new_relic/agent/samplers/cpu_sampler.rb",
71
- "lib/new_relic/agent/samplers/delayed_job_lock_sampler.rb",
101
+ "lib/new_relic/agent/samplers/delayed_job_sampler.rb",
72
102
  "lib/new_relic/agent/samplers/memory_sampler.rb",
73
103
  "lib/new_relic/agent/samplers/object_sampler.rb",
74
104
  "lib/new_relic/agent/shim_agent.rb",
@@ -78,6 +108,8 @@ Gem::Specification.new do |s|
78
108
  "lib/new_relic/agent/stats_engine/metric_stats.rb",
79
109
  "lib/new_relic/agent/stats_engine/samplers.rb",
80
110
  "lib/new_relic/agent/stats_engine/transactions.rb",
111
+ "lib/new_relic/agent/thread.rb",
112
+ "lib/new_relic/agent/thread_profiler.rb",
81
113
  "lib/new_relic/agent/transaction_info.rb",
82
114
  "lib/new_relic/agent/transaction_sample_builder.rb",
83
115
  "lib/new_relic/agent/transaction_sampler.rb",
@@ -88,21 +120,20 @@ Gem::Specification.new do |s|
88
120
  "lib/new_relic/commands/install.rb",
89
121
  "lib/new_relic/control.rb",
90
122
  "lib/new_relic/control/class_methods.rb",
91
- "lib/new_relic/control/configuration.rb",
92
123
  "lib/new_relic/control/frameworks.rb",
93
124
  "lib/new_relic/control/frameworks/external.rb",
94
125
  "lib/new_relic/control/frameworks/merb.rb",
95
126
  "lib/new_relic/control/frameworks/rails.rb",
96
127
  "lib/new_relic/control/frameworks/rails3.rb",
128
+ "lib/new_relic/control/frameworks/rails4.rb",
97
129
  "lib/new_relic/control/frameworks/ruby.rb",
98
130
  "lib/new_relic/control/frameworks/sinatra.rb",
99
131
  "lib/new_relic/control/instance_methods.rb",
100
132
  "lib/new_relic/control/instrumentation.rb",
101
- "lib/new_relic/control/logging_methods.rb",
102
133
  "lib/new_relic/control/profiling.rb",
103
134
  "lib/new_relic/control/server_methods.rb",
104
- "lib/new_relic/data_serialization.rb",
105
135
  "lib/new_relic/delayed_job_injection.rb",
136
+ "lib/new_relic/helper.rb",
106
137
  "lib/new_relic/language_support.rb",
107
138
  "lib/new_relic/local_environment.rb",
108
139
  "lib/new_relic/merbtasks.rb",
@@ -110,8 +141,10 @@ Gem::Specification.new do |s|
110
141
  "lib/new_relic/metric_spec.rb",
111
142
  "lib/new_relic/metrics.rb",
112
143
  "lib/new_relic/noticed_error.rb",
144
+ "lib/new_relic/rack.rb",
113
145
  "lib/new_relic/rack/browser_monitoring.rb",
114
146
  "lib/new_relic/rack/developer_mode.rb",
147
+ "lib/new_relic/rack/error_collector.rb",
115
148
  "lib/new_relic/recipes.rb",
116
149
  "lib/new_relic/stats.rb",
117
150
  "lib/new_relic/timer_lib.rb",
@@ -129,26 +162,123 @@ Gem::Specification.new do |s|
129
162
  "lib/tasks/install.rake",
130
163
  "lib/tasks/tests.rake",
131
164
  "newrelic.yml",
132
- "newrelic_rpm.gemspec",
165
+ "newrelic_rpm.gemspec.erb",
133
166
  "recipes/newrelic.rb",
134
167
  "test/active_record_fixtures.rb",
135
168
  "test/config/newrelic.yml",
136
169
  "test/config/test_control.rb",
170
+ "test/fixtures/gemspec_no_build.rb",
171
+ "test/fixtures/gemspec_with_build.rb",
172
+ "test/fixtures/gemspec_with_build_and_stage.rb",
137
173
  "test/fixtures/proc_cpuinfo.txt",
174
+ "test/intentional_fail.rb",
175
+ "test/multiverse/.gitignore",
176
+ "test/multiverse/README.md",
177
+ "test/multiverse/lib/multiverse/color.rb",
178
+ "test/multiverse/lib/multiverse/envfile.rb",
179
+ "test/multiverse/lib/multiverse/environment.rb",
180
+ "test/multiverse/lib/multiverse/output_collector.rb",
181
+ "test/multiverse/lib/multiverse/runner.rb",
182
+ "test/multiverse/lib/multiverse/suite.rb",
183
+ "test/multiverse/script/run_one",
184
+ "test/multiverse/script/runner",
185
+ "test/multiverse/suites/active_record/Envfile",
186
+ "test/multiverse/suites/active_record/ar_method_aliasing.rb",
187
+ "test/multiverse/suites/active_record/config/newrelic.yml",
188
+ "test/multiverse/suites/active_record/encoding_test.rb",
189
+ "test/multiverse/suites/agent_only/Envfile",
190
+ "test/multiverse/suites/agent_only/audit_log_test.rb",
191
+ "test/multiverse/suites/agent_only/config/newrelic.yml",
192
+ "test/multiverse/suites/agent_only/http_response_code_test.rb",
193
+ "test/multiverse/suites/agent_only/marshaling_test.rb",
194
+ "test/multiverse/suites/agent_only/method_visibility_test.rb",
195
+ "test/multiverse/suites/agent_only/pipe_manager_test.rb",
196
+ "test/multiverse/suites/agent_only/service_timeout_test.rb",
197
+ "test/multiverse/suites/agent_only/test_trace_method_with_punctuation.rb",
198
+ "test/multiverse/suites/agent_only/test_trace_transaction_with_punctuation.rb",
199
+ "test/multiverse/suites/agent_only/thread_profiling_test.rb",
200
+ "test/multiverse/suites/config_file_loading/Envfile",
201
+ "test/multiverse/suites/config_file_loading/config_file_loading_test.rb",
202
+ "test/multiverse/suites/datamapper/Envfile",
203
+ "test/multiverse/suites/datamapper/config/newrelic.yml",
204
+ "test/multiverse/suites/datamapper/encoding_test.rb",
205
+ "test/multiverse/suites/logging/Envfile",
206
+ "test/multiverse/suites/logging/config/newrelic.yml",
207
+ "test/multiverse/suites/logging/logging_test.rb",
208
+ "test/multiverse/suites/monitor_mode_false/Envfile",
209
+ "test/multiverse/suites/monitor_mode_false/config/newrelic.yml",
210
+ "test/multiverse/suites/monitor_mode_false/no_dns_resolv.rb",
211
+ "test/multiverse/suites/no_load/Envfile",
212
+ "test/multiverse/suites/no_load/config/newrelic.yml",
213
+ "test/multiverse/suites/no_load/start_up_test.rb",
214
+ "test/multiverse/suites/rails_3_error_tracing/Envfile",
215
+ "test/multiverse/suites/rails_3_error_tracing/config/newrelic.yml",
216
+ "test/multiverse/suites/rails_3_error_tracing/error_tracing_test.rb",
217
+ "test/multiverse/suites/rails_3_gc/Envfile",
218
+ "test/multiverse/suites/rails_3_gc/config/newrelic.yml",
219
+ "test/multiverse/suites/rails_3_gc/instrumentation_test.rb",
220
+ "test/multiverse/suites/rails_3_queue_time/Envfile",
221
+ "test/multiverse/suites/rails_3_queue_time/config/newrelic.yml",
222
+ "test/multiverse/suites/rails_3_queue_time/queue_time_test.rb",
223
+ "test/multiverse/suites/rails_3_views/.gitignore",
224
+ "test/multiverse/suites/rails_3_views/Envfile",
225
+ "test/multiverse/suites/rails_3_views/app/views/foos/_foo.html.haml",
226
+ "test/multiverse/suites/rails_3_views/app/views/test/_a_partial.html.erb",
227
+ "test/multiverse/suites/rails_3_views/app/views/test/_mid_partial.html.erb",
228
+ "test/multiverse/suites/rails_3_views/app/views/test/_top_partial.html.erb",
229
+ "test/multiverse/suites/rails_3_views/app/views/test/deep_partial.html.erb",
230
+ "test/multiverse/suites/rails_3_views/app/views/test/haml_view.html.haml",
231
+ "test/multiverse/suites/rails_3_views/app/views/test/index.html.erb",
232
+ "test/multiverse/suites/rails_3_views/config/newrelic.yml",
233
+ "test/multiverse/suites/rails_3_views/view_instrumentation_test.rb",
234
+ "test/multiverse/suites/resque/Envfile",
235
+ "test/multiverse/suites/resque/config/newrelic.yml",
236
+ "test/multiverse/suites/resque/dump.rdb",
237
+ "test/multiverse/suites/resque/instrumentation_test.rb",
238
+ "test/multiverse/suites/rum_auto_instrumentation/Envfile",
239
+ "test/multiverse/suites/rum_auto_instrumentation/config/newrelic.yml",
240
+ "test/multiverse/suites/rum_auto_instrumentation/responses/worst_case_small.html",
241
+ "test/multiverse/suites/rum_auto_instrumentation/sanity_test.rb",
242
+ "test/multiverse/suites/sinatra/Envfile",
243
+ "test/multiverse/suites/sinatra/config/newrelic.yml",
244
+ "test/multiverse/suites/sinatra/sinatra_metric_explosion_test.rb",
245
+ "test/multiverse/suites/sinatra/sinatra_routes_test.rb",
246
+ "test/multiverse/suites/sinatra/sinatra_test.rb",
247
+ "test/multiverse/test/multiverse_test.rb",
248
+ "test/multiverse/test/suite_examples/one/a/Envfile",
249
+ "test/multiverse/test/suite_examples/one/a/a_test.rb",
250
+ "test/multiverse/test/suite_examples/one/a/config/newrelic.yml",
251
+ "test/multiverse/test/suite_examples/one/b/Envfile",
252
+ "test/multiverse/test/suite_examples/one/b/b_test.rb",
253
+ "test/multiverse/test/suite_examples/one/b/config/newrelic.yml",
254
+ "test/multiverse/test/suite_examples/three/a/Envfile",
255
+ "test/multiverse/test/suite_examples/three/a/fail_test.rb",
256
+ "test/multiverse/test/suite_examples/three/b/Envfile",
257
+ "test/multiverse/test/suite_examples/three/b/win_test.rb",
258
+ "test/multiverse/test/suite_examples/two/a/Envfile",
259
+ "test/multiverse/test/suite_examples/two/a/fail_test.rb",
138
260
  "test/new_relic/agent/agent/connect_test.rb",
139
261
  "test/new_relic/agent/agent/start_test.rb",
140
262
  "test/new_relic/agent/agent/start_worker_thread_test.rb",
263
+ "test/new_relic/agent/agent_logger_test.rb",
141
264
  "test/new_relic/agent/agent_test.rb",
142
265
  "test/new_relic/agent/agent_test_controller.rb",
143
266
  "test/new_relic/agent/agent_test_controller_test.rb",
144
267
  "test/new_relic/agent/apdex_from_server_test.rb",
268
+ "test/new_relic/agent/audit_logger_test.rb",
145
269
  "test/new_relic/agent/beacon_configuration_test.rb",
146
270
  "test/new_relic/agent/browser_monitoring_test.rb",
147
271
  "test/new_relic/agent/busy_calculator_test.rb",
272
+ "test/new_relic/agent/configuration/environment_source_test.rb",
273
+ "test/new_relic/agent/configuration/manager_test.rb",
274
+ "test/new_relic/agent/configuration/server_source_test.rb",
275
+ "test/new_relic/agent/configuration/yaml_source_test.rb",
276
+ "test/new_relic/agent/cross_process_monitoring_test.rb",
148
277
  "test/new_relic/agent/database_test.rb",
149
278
  "test/new_relic/agent/error_collector/notice_error_test.rb",
150
279
  "test/new_relic/agent/error_collector_test.rb",
151
280
  "test/new_relic/agent/instrumentation/active_record_instrumentation_test.rb",
281
+ "test/new_relic/agent/instrumentation/browser_monitoring_timings_test.rb",
152
282
  "test/new_relic/agent/instrumentation/controller_instrumentation_test.rb",
153
283
  "test/new_relic/agent/instrumentation/instrumentation_test.rb",
154
284
  "test/new_relic/agent/instrumentation/metric_frame/pop_test.rb",
@@ -156,12 +286,16 @@ Gem::Specification.new do |s|
156
286
  "test/new_relic/agent/instrumentation/net_instrumentation_test.rb",
157
287
  "test/new_relic/agent/instrumentation/queue_time_test.rb",
158
288
  "test/new_relic/agent/instrumentation/rack_test.rb",
289
+ "test/new_relic/agent/instrumentation/sinatra_test.rb",
159
290
  "test/new_relic/agent/instrumentation/task_instrumentation_test.rb",
160
291
  "test/new_relic/agent/memcache_instrumentation_test.rb",
161
292
  "test/new_relic/agent/method_tracer/class_methods/add_method_tracer_test.rb",
162
293
  "test/new_relic/agent/method_tracer/instance_methods/trace_execution_scoped_test.rb",
163
294
  "test/new_relic/agent/method_tracer_test.rb",
164
295
  "test/new_relic/agent/mock_scope_listener.rb",
296
+ "test/new_relic/agent/new_relic_service_test.rb",
297
+ "test/new_relic/agent/pipe_channel_manager_test.rb",
298
+ "test/new_relic/agent/pipe_service_test.rb",
165
299
  "test/new_relic/agent/rpm_agent_test.rb",
166
300
  "test/new_relic/agent/sampler_test.rb",
167
301
  "test/new_relic/agent/shim_agent_test.rb",
@@ -170,6 +304,9 @@ Gem::Specification.new do |s|
170
304
  "test/new_relic/agent/stats_engine/metric_stats_test.rb",
171
305
  "test/new_relic/agent/stats_engine/samplers_test.rb",
172
306
  "test/new_relic/agent/stats_engine_test.rb",
307
+ "test/new_relic/agent/thread_profiler_test.rb",
308
+ "test/new_relic/agent/thread_test.rb",
309
+ "test/new_relic/agent/threaded_test.rb",
173
310
  "test/new_relic/agent/transaction_info_test.rb",
174
311
  "test/new_relic/agent/transaction_sample_builder_test.rb",
175
312
  "test/new_relic/agent/transaction_sampler_test.rb",
@@ -178,19 +315,25 @@ Gem::Specification.new do |s|
178
315
  "test/new_relic/collection_helper_test.rb",
179
316
  "test/new_relic/command/deployments_test.rb",
180
317
  "test/new_relic/control/class_methods_test.rb",
181
- "test/new_relic/control/configuration_test.rb",
182
- "test/new_relic/control/logging_methods_test.rb",
318
+ "test/new_relic/control/frameworks/rails_test.rb",
183
319
  "test/new_relic/control_test.rb",
184
- "test/new_relic/data_serialization_test.rb",
185
320
  "test/new_relic/delayed_job_injection_test.rb",
321
+ "test/new_relic/dispatcher_test.rb",
322
+ "test/new_relic/fake_collector.rb",
323
+ "test/new_relic/fake_service.rb",
324
+ "test/new_relic/fakes_sending_data.rb",
325
+ "test/new_relic/framework_test.rb",
326
+ "test/new_relic/load_test.rb",
186
327
  "test/new_relic/local_environment_test.rb",
187
328
  "test/new_relic/metric_data_test.rb",
188
329
  "test/new_relic/metric_parser/metric_parser_test.rb",
189
330
  "test/new_relic/metric_spec_test.rb",
331
+ "test/new_relic/noticed_error_test.rb",
190
332
  "test/new_relic/rack/all_test.rb",
191
333
  "test/new_relic/rack/browser_monitoring_test.rb",
192
334
  "test/new_relic/rack/developer_mode_helper_test.rb",
193
335
  "test/new_relic/rack/developer_mode_test.rb",
336
+ "test/new_relic/rack/error_collector_test.rb",
194
337
  "test/new_relic/stats_test.rb",
195
338
  "test/new_relic/transaction_analysis/segment_summary_test.rb",
196
339
  "test/new_relic/transaction_analysis_test.rb",
@@ -203,7 +346,9 @@ Gem::Specification.new do |s|
203
346
  "test/new_relic/version_number_test.rb",
204
347
  "test/script/build_test_gem.sh",
205
348
  "test/script/ci.sh",
349
+ "test/script/ci_agent-tests_runner.sh",
206
350
  "test/script/ci_bench.sh",
351
+ "test/script/ci_multiverse_runner.sh",
207
352
  "test/test_contexts.rb",
208
353
  "test/test_helper.rb",
209
354
  "ui/helpers/developer_mode_helper.rb",
@@ -240,6 +385,7 @@ Gem::Specification.new do |s|
240
385
  "vendor/gems/dependency_detection-0.0.1.build/LICENSE",
241
386
  "vendor/gems/dependency_detection-0.0.1.build/lib/dependency_detection.rb",
242
387
  "vendor/gems/dependency_detection-0.0.1.build/lib/dependency_detection/version.rb",
388
+ "vendor/gems/metric_parser-0.1.0.pre1/.specification",
243
389
  "vendor/gems/metric_parser-0.1.0.pre1/lib/metric_parser.rb",
244
390
  "vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser.rb",
245
391
  "vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/action_mailer.rb",
@@ -271,6 +417,7 @@ Gem::Specification.new do |s|
271
417
  "vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/servlet.rb",
272
418
  "vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/servlet_context_listener.rb",
273
419
  "vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/servlet_filter.rb",
420
+ "vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/servlet_init.rb",
274
421
  "vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/solr.rb",
275
422
  "vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/solr_request_handler.rb",
276
423
  "vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/spring.rb",
@@ -282,31 +429,65 @@ Gem::Specification.new do |s|
282
429
  "vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/view.rb",
283
430
  "vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/web_frontend.rb",
284
431
  "vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/web_service.rb",
285
- "vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/web_transaction.rb"
432
+ "vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/web_transaction.rb",
433
+ "newrelic_rpm.gemspec",
286
434
  ]
287
435
  s.homepage = "http://www.github.com/newrelic/rpm"
288
- s.post_install_message = "\nPLEASE NOTE:\n\nDeveloper Mode is now a Rack middleware.\n\nDeveloper Mode is no longer available in Rails 2.1 and earlier.\nHowever, starting in version 2.12 you can use Developer Mode in any\nRack based framework, in addition to Rails. To install developer mode\nin a non-Rails application, just add NewRelic::Rack::DeveloperMode to\nyour middleware stack.\n\nIf you are using JRuby, we recommend using at least version 1.4 or \nlater because of issues with the implementation of the timeout library.\n\nRefer to the README.md file for more information.\n\nPlease see http://github.com/newrelic/rpm/blob/master/CHANGELOG\nfor a complete description of the features and enhancements available\nin version 3.3 of the Ruby Agent.\n \n"
436
+
437
+
438
+
439
+ s.post_install_message = <<'EOS'
440
+
441
+ # New Relic Ruby Agent Release Notes #
442
+
443
+ ## v3.5.5 ##
444
+
445
+ * Add thread profiling support
446
+
447
+ Thread profiling performs statistical sampling of backtraces of all threads
448
+ within your Ruby processes. This feature requires MRI >= 1.9.2, and is
449
+ controlled via the New Relic web UI. JRuby support (in 1.9.x compat mode) is
450
+ considered experimental, due to issues with JRuby's Thread#backtrace.
451
+
452
+ * Add audit logging capability
453
+
454
+ The agent can now log all of the data it sends to the New Relic servers to
455
+ a special log file for human inspection. This feature is off by default, and
456
+ can be enabled by setting the audit_log.enabled configuration key to true.
457
+ You may also control the location of the audit log with the audit_log.path key.
458
+
459
+ * Use config system for dispatcher, framework, and config file detection
460
+
461
+ Several aspects of the agent's configuration were not being handled by the
462
+ configuration system. Detection/configuration of the dispatcher (e.g. passenger,
463
+ unicorn, resque), framework (e.g. rails3, sinatra), and newrelic.yml
464
+ location are now handled via the Agent environment, manual, and default
465
+ configuration sources.
466
+
467
+ * Updates to logging across the agent
468
+
469
+ We've carefully reviewed the logging messages that the agent outputs, adding
470
+ details in some cases, and removing unnecessary clutter. We've also altered
471
+ the startup sequence to ensure that we don't spam STDOUT with messages
472
+ during initialization.
473
+
474
+ * Fix passing environment to manual_start()
475
+
476
+ Thanks to Justin Hannus. The :env key, when passed to Agent.manual_start,
477
+ can again be used to specify which section of newrelic.yml is loaded.
478
+
479
+ * Rails 4 support
480
+
481
+ This release includes preliminary support for Rails 4 as of 4.0.0.beta.
482
+ Rails 4 is still in development, but the agent should work as expected for
483
+ people who are experimenting with the beta.
484
+
485
+
486
+ See https://github.com/newrelic/rpm/blob/master/CHANGELOG for a full list of
487
+ changes.
488
+ EOS
289
489
  s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "New Relic Ruby Agent"]
290
490
  s.require_paths = ["lib"]
491
+ s.rubygems_version = "1.8.24"
291
492
  s.summary = "New Relic Ruby Agent"
292
-
293
- if s.respond_to? :specification_version then
294
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
295
- s.specification_version = 3
296
-
297
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
298
- s.add_development_dependency(%q<jeweler>, [">= 0"])
299
- s.add_development_dependency(%q<mocha>, [">= 0"])
300
- s.add_development_dependency(%q<shoulda>, [">= 0"])
301
- else
302
- s.add_dependency(%q<jeweler>, [">= 0"])
303
- s.add_dependency(%q<mocha>, [">= 0"])
304
- s.add_dependency(%q<shoulda>, [">= 0"])
305
- end
306
- else
307
- s.add_dependency(%q<jeweler>, [">= 0"])
308
- s.add_dependency(%q<mocha>, [">= 0"])
309
- s.add_dependency(%q<shoulda>, [">= 0"])
310
- end
311
493
  end
312
-