ghazel-newrelic_rpm 3.1.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (255) hide show
  1. data/CHANGELOG +525 -0
  2. data/LICENSE +37 -0
  3. data/README.rdoc +179 -0
  4. data/bin/mongrel_rpm +33 -0
  5. data/bin/newrelic +13 -0
  6. data/bin/newrelic_cmd +5 -0
  7. data/cert/cacert.pem +118 -0
  8. data/cert/oldsite.pem +28 -0
  9. data/cert/site.pem +27 -0
  10. data/install.rb +9 -0
  11. data/lib/conditional_vendored_dependency_detection.rb +3 -0
  12. data/lib/conditional_vendored_metric_parser.rb +5 -0
  13. data/lib/new_relic/agent.rb +423 -0
  14. data/lib/new_relic/agent/agent.rb +1040 -0
  15. data/lib/new_relic/agent/beacon_configuration.rb +61 -0
  16. data/lib/new_relic/agent/browser_monitoring.rb +83 -0
  17. data/lib/new_relic/agent/busy_calculator.rb +91 -0
  18. data/lib/new_relic/agent/chained_call.rb +13 -0
  19. data/lib/new_relic/agent/error_collector.rb +203 -0
  20. data/lib/new_relic/agent/instrumentation.rb +9 -0
  21. data/lib/new_relic/agent/instrumentation/active_merchant.rb +21 -0
  22. data/lib/new_relic/agent/instrumentation/acts_as_solr.rb +62 -0
  23. data/lib/new_relic/agent/instrumentation/authlogic.rb +13 -0
  24. data/lib/new_relic/agent/instrumentation/controller_instrumentation.rb +413 -0
  25. data/lib/new_relic/agent/instrumentation/data_mapper.rb +232 -0
  26. data/lib/new_relic/agent/instrumentation/delayed_job_instrumentation.rb +44 -0
  27. data/lib/new_relic/agent/instrumentation/memcache.rb +56 -0
  28. data/lib/new_relic/agent/instrumentation/merb/controller.rb +36 -0
  29. data/lib/new_relic/agent/instrumentation/merb/errors.rb +23 -0
  30. data/lib/new_relic/agent/instrumentation/metric_frame.rb +326 -0
  31. data/lib/new_relic/agent/instrumentation/metric_frame/pop.rb +84 -0
  32. data/lib/new_relic/agent/instrumentation/net.rb +23 -0
  33. data/lib/new_relic/agent/instrumentation/passenger_instrumentation.rb +34 -0
  34. data/lib/new_relic/agent/instrumentation/queue_time.rb +210 -0
  35. data/lib/new_relic/agent/instrumentation/rack.rb +98 -0
  36. data/lib/new_relic/agent/instrumentation/rails/action_controller.rb +83 -0
  37. data/lib/new_relic/agent/instrumentation/rails/action_web_service.rb +36 -0
  38. data/lib/new_relic/agent/instrumentation/rails/active_record_instrumentation.rb +108 -0
  39. data/lib/new_relic/agent/instrumentation/rails/errors.rb +36 -0
  40. data/lib/new_relic/agent/instrumentation/rails3/action_controller.rb +60 -0
  41. data/lib/new_relic/agent/instrumentation/rails3/active_record_instrumentation.rb +112 -0
  42. data/lib/new_relic/agent/instrumentation/rails3/errors.rb +31 -0
  43. data/lib/new_relic/agent/instrumentation/sinatra.rb +54 -0
  44. data/lib/new_relic/agent/instrumentation/sunspot.rb +23 -0
  45. data/lib/new_relic/agent/instrumentation/unicorn_instrumentation.rb +16 -0
  46. data/lib/new_relic/agent/method_tracer.rb +422 -0
  47. data/lib/new_relic/agent/sampler.rb +50 -0
  48. data/lib/new_relic/agent/samplers/cpu_sampler.rb +58 -0
  49. data/lib/new_relic/agent/samplers/delayed_job_lock_sampler.rb +40 -0
  50. data/lib/new_relic/agent/samplers/memory_sampler.rb +144 -0
  51. data/lib/new_relic/agent/samplers/object_sampler.rb +26 -0
  52. data/lib/new_relic/agent/shim_agent.rb +29 -0
  53. data/lib/new_relic/agent/stats_engine.rb +24 -0
  54. data/lib/new_relic/agent/stats_engine/metric_stats.rb +182 -0
  55. data/lib/new_relic/agent/stats_engine/samplers.rb +89 -0
  56. data/lib/new_relic/agent/stats_engine/transactions.rb +184 -0
  57. data/lib/new_relic/agent/transaction_sample_builder.rb +101 -0
  58. data/lib/new_relic/agent/transaction_sampler.rb +378 -0
  59. data/lib/new_relic/agent/worker_loop.rb +81 -0
  60. data/lib/new_relic/collection_helper.rb +69 -0
  61. data/lib/new_relic/command.rb +85 -0
  62. data/lib/new_relic/commands/deployments.rb +105 -0
  63. data/lib/new_relic/commands/install.rb +91 -0
  64. data/lib/new_relic/control.rb +48 -0
  65. data/lib/new_relic/control/class_methods.rb +47 -0
  66. data/lib/new_relic/control/configuration.rb +157 -0
  67. data/lib/new_relic/control/frameworks/external.rb +16 -0
  68. data/lib/new_relic/control/frameworks/merb.rb +30 -0
  69. data/lib/new_relic/control/frameworks/rails.rb +151 -0
  70. data/lib/new_relic/control/frameworks/rails3.rb +70 -0
  71. data/lib/new_relic/control/frameworks/ruby.rb +42 -0
  72. data/lib/new_relic/control/frameworks/sinatra.rb +23 -0
  73. data/lib/new_relic/control/instance_methods.rb +154 -0
  74. data/lib/new_relic/control/instrumentation.rb +81 -0
  75. data/lib/new_relic/control/logging_methods.rb +88 -0
  76. data/lib/new_relic/control/profiling.rb +25 -0
  77. data/lib/new_relic/control/server_methods.rb +104 -0
  78. data/lib/new_relic/data_serialization.rb +84 -0
  79. data/lib/new_relic/delayed_job_injection.rb +38 -0
  80. data/lib/new_relic/histogram.rb +91 -0
  81. data/lib/new_relic/local_environment.rb +391 -0
  82. data/lib/new_relic/merbtasks.rb +6 -0
  83. data/lib/new_relic/metric_data.rb +46 -0
  84. data/lib/new_relic/metric_spec.rb +73 -0
  85. data/lib/new_relic/metrics.rb +9 -0
  86. data/lib/new_relic/noticed_error.rb +24 -0
  87. data/lib/new_relic/rack/browser_monitoring.rb +68 -0
  88. data/lib/new_relic/rack/developer_mode.rb +267 -0
  89. data/lib/new_relic/rack/metric_app.rb +65 -0
  90. data/lib/new_relic/rack/mongrel_rpm.ru +28 -0
  91. data/lib/new_relic/rack/newrelic.yml +27 -0
  92. data/lib/new_relic/rack_app.rb +6 -0
  93. data/lib/new_relic/recipes.rb +73 -0
  94. data/lib/new_relic/stats.rb +378 -0
  95. data/lib/new_relic/timer_lib.rb +27 -0
  96. data/lib/new_relic/transaction_analysis.rb +76 -0
  97. data/lib/new_relic/transaction_analysis/segment_summary.rb +47 -0
  98. data/lib/new_relic/transaction_sample.rb +272 -0
  99. data/lib/new_relic/transaction_sample/composite_segment.rb +27 -0
  100. data/lib/new_relic/transaction_sample/fake_segment.rb +9 -0
  101. data/lib/new_relic/transaction_sample/segment.rb +251 -0
  102. data/lib/new_relic/transaction_sample/summary_segment.rb +21 -0
  103. data/lib/new_relic/url_rule.rb +14 -0
  104. data/lib/new_relic/version.rb +55 -0
  105. data/lib/newrelic_rpm.rb +49 -0
  106. data/lib/tasks/all.rb +4 -0
  107. data/lib/tasks/install.rake +7 -0
  108. data/lib/tasks/tests.rake +19 -0
  109. data/newrelic.yml +265 -0
  110. data/newrelic_rpm.gemspec +330 -0
  111. data/recipes/newrelic.rb +6 -0
  112. data/test/active_record_fixtures.rb +77 -0
  113. data/test/config/newrelic.yml +48 -0
  114. data/test/config/test_control.rb +48 -0
  115. data/test/new_relic/agent/agent/connect_test.rb +316 -0
  116. data/test/new_relic/agent/agent/start_test.rb +340 -0
  117. data/test/new_relic/agent/agent/start_worker_thread_test.rb +155 -0
  118. data/test/new_relic/agent/agent_test.rb +173 -0
  119. data/test/new_relic/agent/agent_test_controller.rb +77 -0
  120. data/test/new_relic/agent/agent_test_controller_test.rb +366 -0
  121. data/test/new_relic/agent/apdex_from_server_test.rb +9 -0
  122. data/test/new_relic/agent/beacon_configuration_test.rb +104 -0
  123. data/test/new_relic/agent/browser_monitoring_test.rb +274 -0
  124. data/test/new_relic/agent/busy_calculator_test.rb +81 -0
  125. data/test/new_relic/agent/error_collector/notice_error_test.rb +257 -0
  126. data/test/new_relic/agent/error_collector_test.rb +168 -0
  127. data/test/new_relic/agent/instrumentation/active_record_instrumentation_test.rb +522 -0
  128. data/test/new_relic/agent/instrumentation/controller_instrumentation_test.rb +36 -0
  129. data/test/new_relic/agent/instrumentation/instrumentation_test.rb +11 -0
  130. data/test/new_relic/agent/instrumentation/metric_frame/pop_test.rb +179 -0
  131. data/test/new_relic/agent/instrumentation/metric_frame_test.rb +50 -0
  132. data/test/new_relic/agent/instrumentation/net_instrumentation_test.rb +84 -0
  133. data/test/new_relic/agent/instrumentation/queue_time_test.rb +387 -0
  134. data/test/new_relic/agent/instrumentation/rack_test.rb +35 -0
  135. data/test/new_relic/agent/instrumentation/task_instrumentation_test.rb +184 -0
  136. data/test/new_relic/agent/memcache_instrumentation_test.rb +107 -0
  137. data/test/new_relic/agent/method_tracer/class_methods/add_method_tracer_test.rb +164 -0
  138. data/test/new_relic/agent/method_tracer/instance_methods/trace_execution_scoped_test.rb +234 -0
  139. data/test/new_relic/agent/method_tracer_test.rb +386 -0
  140. data/test/new_relic/agent/mock_scope_listener.rb +23 -0
  141. data/test/new_relic/agent/rpm_agent_test.rb +149 -0
  142. data/test/new_relic/agent/sampler_test.rb +19 -0
  143. data/test/new_relic/agent/shim_agent_test.rb +20 -0
  144. data/test/new_relic/agent/stats_engine/metric_stats/harvest_test.rb +150 -0
  145. data/test/new_relic/agent/stats_engine/metric_stats_test.rb +81 -0
  146. data/test/new_relic/agent/stats_engine/samplers_test.rb +99 -0
  147. data/test/new_relic/agent/stats_engine_test.rb +185 -0
  148. data/test/new_relic/agent/transaction_sample_builder_test.rb +195 -0
  149. data/test/new_relic/agent/transaction_sampler_test.rb +945 -0
  150. data/test/new_relic/agent/worker_loop_test.rb +66 -0
  151. data/test/new_relic/collection_helper_test.rb +127 -0
  152. data/test/new_relic/command/deployments_test.rb +68 -0
  153. data/test/new_relic/control/class_methods_test.rb +62 -0
  154. data/test/new_relic/control/logging_methods_test.rb +157 -0
  155. data/test/new_relic/control_test.rb +195 -0
  156. data/test/new_relic/data_serialization_test.rb +70 -0
  157. data/test/new_relic/local_environment_test.rb +72 -0
  158. data/test/new_relic/metric_data_test.rb +125 -0
  159. data/test/new_relic/metric_spec_test.rb +95 -0
  160. data/test/new_relic/rack/all_test.rb +11 -0
  161. data/test/new_relic/rack/browser_monitoring_test.rb +84 -0
  162. data/test/new_relic/rack/developer_mode_test.rb +43 -0
  163. data/test/new_relic/stats_test.rb +426 -0
  164. data/test/new_relic/transaction_analysis/segment_summary_test.rb +77 -0
  165. data/test/new_relic/transaction_analysis_test.rb +121 -0
  166. data/test/new_relic/transaction_sample/composite_segment_test.rb +35 -0
  167. data/test/new_relic/transaction_sample/fake_segment_test.rb +17 -0
  168. data/test/new_relic/transaction_sample/segment_test.rb +454 -0
  169. data/test/new_relic/transaction_sample/summary_segment_test.rb +31 -0
  170. data/test/new_relic/transaction_sample_subtest_test.rb +56 -0
  171. data/test/new_relic/transaction_sample_test.rb +170 -0
  172. data/test/new_relic/version_number_test.rb +89 -0
  173. data/test/test_contexts.rb +29 -0
  174. data/test/test_helper.rb +144 -0
  175. data/ui/helpers/developer_mode_helper.rb +351 -0
  176. data/ui/helpers/google_pie_chart.rb +49 -0
  177. data/ui/views/layouts/newrelic_default.rhtml +47 -0
  178. data/ui/views/newrelic/_explain_plans.rhtml +27 -0
  179. data/ui/views/newrelic/_sample.rhtml +20 -0
  180. data/ui/views/newrelic/_segment.rhtml +28 -0
  181. data/ui/views/newrelic/_segment_limit_message.rhtml +1 -0
  182. data/ui/views/newrelic/_segment_row.rhtml +12 -0
  183. data/ui/views/newrelic/_show_sample_detail.rhtml +24 -0
  184. data/ui/views/newrelic/_show_sample_sql.rhtml +24 -0
  185. data/ui/views/newrelic/_show_sample_summary.rhtml +3 -0
  186. data/ui/views/newrelic/_sql_row.rhtml +16 -0
  187. data/ui/views/newrelic/_stack_trace.rhtml +15 -0
  188. data/ui/views/newrelic/_table.rhtml +12 -0
  189. data/ui/views/newrelic/explain_sql.rhtml +43 -0
  190. data/ui/views/newrelic/file/images/arrow-close.png +0 -0
  191. data/ui/views/newrelic/file/images/arrow-open.png +0 -0
  192. data/ui/views/newrelic/file/images/blue_bar.gif +0 -0
  193. data/ui/views/newrelic/file/images/file_icon.png +0 -0
  194. data/ui/views/newrelic/file/images/gray_bar.gif +0 -0
  195. data/ui/views/newrelic/file/images/new-relic-rpm-desktop.gif +0 -0
  196. data/ui/views/newrelic/file/images/new_relic_rpm_desktop.gif +0 -0
  197. data/ui/views/newrelic/file/images/textmate.png +0 -0
  198. data/ui/views/newrelic/file/javascript/jquery-1.4.2.js +6240 -0
  199. data/ui/views/newrelic/file/javascript/transaction_sample.js +120 -0
  200. data/ui/views/newrelic/file/stylesheets/style.css +490 -0
  201. data/ui/views/newrelic/index.rhtml +71 -0
  202. data/ui/views/newrelic/sample_not_found.rhtml +2 -0
  203. data/ui/views/newrelic/show_sample.rhtml +80 -0
  204. data/ui/views/newrelic/show_source.rhtml +3 -0
  205. data/ui/views/newrelic/threads.rhtml +53 -0
  206. data/vendor/gems/dependency_detection-0.0.1.build/LICENSE +19 -0
  207. data/vendor/gems/dependency_detection-0.0.1.build/README +0 -0
  208. data/vendor/gems/dependency_detection-0.0.1.build/lib/dependency_detection.rb +57 -0
  209. data/vendor/gems/dependency_detection-0.0.1.build/lib/dependency_detection/version.rb +3 -0
  210. data/vendor/gems/metric_parser-0.1.0.pre1/LICENSE +0 -0
  211. data/vendor/gems/metric_parser-0.1.0.pre1/README +0 -0
  212. data/vendor/gems/metric_parser-0.1.0.pre1/lib/metric_parser.rb +1 -0
  213. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser.rb +64 -0
  214. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/action_mailer.rb +14 -0
  215. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/active_merchant.rb +31 -0
  216. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/active_record.rb +33 -0
  217. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/apdex.rb +89 -0
  218. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/background_transaction.rb +7 -0
  219. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/client.rb +46 -0
  220. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/controller.rb +67 -0
  221. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/controller_cpu.rb +43 -0
  222. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/controller_ext.rb +17 -0
  223. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/database.rb +48 -0
  224. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/database_pool.rb +24 -0
  225. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/dot_net.rb +28 -0
  226. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/dot_net_parser.rb +17 -0
  227. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/errors.rb +11 -0
  228. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/external.rb +55 -0
  229. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/frontend.rb +40 -0
  230. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/gc.rb +20 -0
  231. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/hibernate_session.rb +7 -0
  232. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/java.rb +31 -0
  233. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/java_parser.rb +17 -0
  234. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/jsp.rb +34 -0
  235. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/jsp_tag.rb +7 -0
  236. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/mem_cache.rb +55 -0
  237. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/metric_parser.rb +122 -0
  238. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/orm.rb +27 -0
  239. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/other_transaction.rb +40 -0
  240. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/servlet.rb +7 -0
  241. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/servlet_context_listener.rb +7 -0
  242. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/servlet_filter.rb +7 -0
  243. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/solr.rb +27 -0
  244. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/solr_request_handler.rb +15 -0
  245. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/spring.rb +54 -0
  246. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/spring_controller.rb +6 -0
  247. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/spring_view.rb +6 -0
  248. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/struts_action.rb +20 -0
  249. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/struts_result.rb +20 -0
  250. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/version.rb +5 -0
  251. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/view.rb +66 -0
  252. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/web_frontend.rb +18 -0
  253. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/web_service.rb +14 -0
  254. data/vendor/gems/metric_parser-0.1.0.pre1/lib/new_relic/metric_parser/web_transaction.rb +133 -0
  255. metadata +399 -0
@@ -0,0 +1,525 @@
1
+ v3.1.0
2
+ * Support for aggregating data from short-running
3
+ processes to reduce reporting overhead
4
+ * Numerous bug fixes
5
+ * Increased unit test coverage
6
+
7
+ v3.0.1
8
+ * Updated Real User Monitoring to reduce javascript size and improve
9
+ compatibility, fix a few known bugs
10
+
11
+ v3.0.0
12
+ * Support for Real User Monitoring
13
+ * Back end work on internals to improve reliability
14
+ * added a 'log_file_name' and 'log_file_path' configuration variable to allow
15
+ setting the path and name of the agent log file
16
+ * Improve reliability of statistics calculations
17
+ * Remove some previously deprecated methods
18
+ * Remove Sequel instrumentation pending more work
19
+
20
+ v2.14.1
21
+ * Avoid overriding methods named 'log' when including the MethodTracer module
22
+ * Ensure that all load paths for 'new_relic/agent' go through 'new_relic/control' first
23
+ * Remove some debugging output from tests
24
+
25
+ v2.14.0
26
+ * Dependency detection framework to prevent multi-loading or early-loading
27
+ of instrumentation files
28
+
29
+ v2.13.5
30
+ * Moved the API helper to the github newrelic_api gem.
31
+ * Revamped queue time to include server, queue, and middleware time
32
+ * Increased test coverage and stability
33
+ * Add Trinidad as a dispatcher (from Calavera, on github)
34
+ * Sequel instrumentation from Aman Gupta
35
+ * patches to 1.9 compatibility from dkastner on github
36
+ * Support for 1.9.2's garbage collection instrumentation from Justin Weiss
37
+ * On Heroku, existing queue time headers will be detected
38
+ * Fix rack constant scoping in dev mode for 1.9 (Rack != ::Rack)
39
+ * Fixes for instrumentation loading failing on Exception classes that
40
+ are not subclasses of StandardError
41
+ * Fix active record instrumentation load order for Rails 3
42
+
43
+ v2.13.4
44
+ * Update DNS lookup code to remove hardcoded IP addresses
45
+
46
+ v2.13.3
47
+ * Dalli instrumentation from Mike Perham (thanks Mike)
48
+ * Datamapper instrumentation from Jordan Ritter (thanks Jordan)
49
+ * Apdex now defaults to 0.5
50
+ !!! Please be aware that if you are not setting an apdex,
51
+ !!! this will cause a change in the apparent performance of your app.
52
+ * Make metric hashes threadsafe (fixes problems sending metrics in Jruby
53
+ threaded code)
54
+ * Delete obsolete links to metric docs in developer mode
55
+ * Detect gems when using Bundler
56
+ * Fix newrelic_ignore in Rails 3
57
+ * Break metric parser into a seperate vendored gem
58
+ * When using Unicorn, preload_app: true is recommended to get proper
59
+ after_fork behavior.
60
+
61
+ v2.13.2
62
+ * Remove a puts. Yes, a whole release for a puts.
63
+
64
+ v2.13.1
65
+ * Add missing require in rails 3 framework control
66
+
67
+ v2.13.0
68
+ * developer mode is now a rack middleware and can be used on any framework;
69
+ it is no longer supported automatically on versions of Rails prior to 2.3;
70
+ see README for details
71
+ * memcache key recording for transaction traces
72
+ * use system_timer gem if available, fall back to timeout lib
73
+ * address instability issues in JRuby 1.2
74
+ * renamed executable 'newrelic_cmd' to 'newrelic'; old name still supported
75
+ for backward compatibility
76
+ * added 'newrelic install' command to install a newrelic.yml file in the
77
+ current directory
78
+ * optimization to execution time measurement
79
+ * optimization to startup sequence
80
+ * change startup sequence so that instrumentation is installed after all
81
+ other gems and plugins have loaded
82
+ * add option to override automatic flushing of data on exit--send_data_on_exit
83
+ defaults to 'true'
84
+ * ignored errors no longer affect apdex score
85
+ * added record_transaction method to the api to allow recording
86
+ details from web and background transactions occurring outside RPM
87
+ * fixed a bug related to enabling a gold trial / upgrade not sending
88
+ trasaction traces correctly
89
+
90
+ v2.12.3
91
+ * fix regression in startup sequence
92
+
93
+ v2.12.2
94
+ * fix for regression in Rails 2.1 inline rendering
95
+ * workaround bug found in some rubies that caused a segv and/or NoMemoryError
96
+ when deflating content for upload
97
+ * avoid creating connection thread in unicorn/passenger spawners
98
+
99
+ v2.12.1
100
+ * fix bug in profile mode
101
+ * fix race condition in Delayed::Job instrumentation loading
102
+ * fix glassfish detection in latest glassfish gem
103
+
104
+ v2.12.0
105
+ * support basic instrumentation for ActsAsSolr and Sunspot
106
+
107
+ v2.11.3
108
+ * fix bug in startup when running JRuby
109
+
110
+ v2.11.2
111
+ * fix for unicorn not reporting when the proc line had 'master' in it
112
+ * fix regression for passenger 2.0 and earlier
113
+ * fix after_fork in the shim
114
+
115
+ v2.11.1
116
+ * republished gem without generated rdocs
117
+
118
+ v2.11.0
119
+ * rails3 instrumentation (no developer mode support yet)
120
+ * removed the ensure_worker_thread started and instead defined an after_fork
121
+ handler that will set up the agent properly in forked processes.
122
+ * change at_exit handler so the shutdown always goes after other shutdown
123
+ handlers
124
+ * add visibility to active record db transactions in the rpm transaction
125
+ traces (thanks to jeremy kemper)
126
+ * fix regression in merb support which caused merb apps not to start
127
+ * added NewRelic::Agent.logger to the public api to write to the agent
128
+ log file.
129
+ * optimizations to background thread, controller instrumentation, memory
130
+ usage
131
+ * add logger method to public_api
132
+ * support list notation for ignored exceptions in the newrelic.yml
133
+
134
+ v2.10.8
135
+ * fix bug in delayed_job instrumentation that caused the job queue sampler
136
+ to run in the wrong place
137
+ * change startup sequence and code that restarts the worker loop
138
+ thread
139
+ * detect the unicorn master and dont start the agent; hook in after_fork
140
+ * fix problem with the Authlogic metric names which caused errors in
141
+ developer mode. Authlogic metrics now adhere to the convention of
142
+ prefixing the name with 'Custom'
143
+ * allow more correct overriding of transaction trace settings in the
144
+ call to #manual_start
145
+ * simplify WorkerLoop and add better protection for concurrency
146
+ * preliminary support for rails3
147
+
148
+ v2.10.6
149
+ * fix missing URL and referer on some traced errors and transactions
150
+ * gather traced errors *after* executing the rescue chain in ActionController
151
+ * always load controller instrumentation
152
+ * pick up token validation from newrelic.yml
153
+
154
+ v2.10.5
155
+ * fix bug in delayed_job instrumentation occurring when there was no DJ log
156
+
157
+ v2.10.4
158
+ * fix incompatibility with Capistrano 2.5.16
159
+ * strip down URLs reported in transactions and errors to path only
160
+
161
+ v2.10.3
162
+ * optimization to reduce overhead: move background samplers into foreground thread
163
+ * change default config file to ignore RoutingErrors
164
+ * moved the background task instrumentation into a separate tab in the RPM UI
165
+ * allow override of the RPM application name via NEWRELIC_APP_NAME environment variable
166
+ * revised Delayed::Job instrumentation so no manual_start is required
167
+ * send buffered data on shutdown
168
+ * expanded support for queue length and queue time
169
+ * remove calls to starts_with to fix Sinatra and non-rails deployments
170
+ * fix problem with apdex scores recording too low in some circumstances
171
+ * switch to jeweler for gem building
172
+ * minor fixes, test improvements, doc and rakefile improvements
173
+ * fix incompatibility with Hoptoad where Hoptoad was not getting errors handled by New Relic
174
+ * many other optimizations, bug fixes and documentation improvements
175
+
176
+ v2.10.2.
177
+ * beta release of 2.10
178
+ * fix bugs with Sinatra app instrumentation
179
+ * minor doc updates
180
+
181
+ v2.10.1.
182
+ * alpha release of 2.10
183
+ * rack support, including metal; ignores 404s; requires a module inclusion (see docs)
184
+ * sinatra support, displays actions named by the URI pattern matched
185
+ * add API method to abort transaction recording for in-flight transactions
186
+ * remove account management calls from newrelic_api.rb
187
+ * truncating extremely large transaction traces for efficiency
188
+ * fix error reporting in recipes; add newrelic_rails_env option to recipes to
189
+ override the rails env used to pull the app_name out of newrelic.yml
190
+ * added TorqueBox recognition (thanks Bob McWhirter)
191
+ * renamed config settings: enabled => monitor_mode; developer => developer_mode;
192
+ old names will still work in newrelic.yml
193
+ * instrumentation for DelayedJob (thanks Travis Tilley)
194
+ * added config switches to turn off certain instrumentation when you aren't
195
+ interested in the metrics, to save on overhead--see newrelic.yml for details.
196
+ * add profiling support to dev mode; very experimental!
197
+ * add 'multi_threaded' config option to indicate when the app is running
198
+ multi-threaded, so we can disable some instrumentation
199
+ * fix test failures in JRuby, REE
200
+ * improve Net::HTTP instrumentation so its more efficient and distinguishes calls
201
+ between web and non-web transactions.
202
+ * database instrumentation notices all database commands in addition to the core commands
203
+ * add support for textmate to dev mode
204
+ * added add_transaction_tracer method to support instrumenting methods as
205
+ if they were web transactions; this will facilitate better visibility of background
206
+ tasks and eventually things like rack, metal and Sinatra
207
+ * adjusted apdex scores to reflect time spent in the mongrel queue
208
+ * fixed incompatibility with JRuby on startup
209
+ * implmented CPU measure for JRuby which reflects the cpu burn for
210
+ all controller actions (does not include background tasks)
211
+ * fixed scope issue with GC instrumentation, subtracting time from caller
212
+ * added # of GC calls to GC instrumentation
213
+ * renamed the dispatcher metric
214
+ * refactored stats_engine code for readability
215
+ * optimization: reduce wakeup times for harvest thread
216
+
217
+ v2.10.0.
218
+ * alpha release of 2.10
219
+ * support unicorn
220
+ * instrumentation of GC for REE and MRE with GC patch
221
+ * support agent restarting when changes are made to the account
222
+ * removed #newrelic_notice_error from Object class, replaced by NewRelic::Agent#notic_error
223
+ * collect histogram statistics
224
+ * add custom parameters to newrelic_notice_error call to display
225
+ extra info for errors
226
+ * add method disable_all_tracing(&block) to execute a block without
227
+ capturing metrics
228
+ * newrelic_ignore now blocks all instrumentation collection for
229
+ the specified actions
230
+ * added doc to method_tracer API and removed second arg
231
+ requirement for add_method_tracer call
232
+ * instrumentation for Net::HTTP
233
+ * remove method_tracer shim to avoid timing problems in monitoring daemons
234
+ * for non-rails daemons, look at APP_ROOT and NRCONFIG env vars for custom locations
235
+
236
+ v2.9.9.
237
+ * Disable at_exit handler for Unicorn which sometimes caused the
238
+ agent to stop reporting immediately.
239
+
240
+ v2.9.8.
241
+ * add instrumentation for Net::HTTP calls, to show up as "External"
242
+ * added support for validating agents in the cloud.
243
+ * recognize Unicorn dispatcher
244
+ * add NewRelic module definitions to ActiveRecord instrumentation
245
+
246
+ v2.9.5.
247
+ * Snow Leopard memory fix
248
+
249
+ v2.9.4.
250
+ * clamp size of data sent to server
251
+ * reset statistics for passenger when forking to avoid erroneous data
252
+ * fix problem deserializing errors from the server
253
+ * fix incompatibility with postgres introduced in 2.9.
254
+
255
+ v2.9.3.
256
+ * fix startup failure in Windows due to memory sampler
257
+ * add JRuby environment information
258
+
259
+ v2.9.2.
260
+ * change default apdex_t to 0.5 seconds
261
+ * fix bug in deployments introduced by multi_homed setting
262
+ * support overriding the log in the agent api
263
+ * fix JRuby problem using objectspace
264
+ * display custom parameters when looking at transactions in dev mode
265
+ * display count of sql statements on the list of transactions in dev mode
266
+ * fixes for merb--thanks to Carl Lerche
267
+
268
+ v2.9.1.
269
+ * add newrelic_ignore_apdex method to controller classes to allow
270
+ you to omit some actions from apdex statistics
271
+ * Add hook for Passenger shutdown events to get more timely shutdown
272
+ notices; this will help in more accurate memory readings in
273
+ Passenger
274
+ * add newrelic_notice_error to Object class
275
+ * optional ability to verify SSL certificates, note that this has some
276
+ performance and reliability implications
277
+ * support multi-homed host with multiple apps running on duplicate
278
+ ports
279
+
280
+ v2.9.0.
281
+ Noteworthy Enhancements
282
+ * give visibility to templates and partials in Rails 2.1 and later, in
283
+ dev mode and production
284
+ * change active record metrics to capture statistics in adapter log()
285
+ call, resulting in lower overhead and improved visibility into
286
+ different DB operations; only AR operations that are not hitting the
287
+ query cache will be measured to avoid overhead
288
+ * added mongrel_rpm to the gem, a standalone daemon listening for custom
289
+ metric values sent from local processes (experimental); do mongrel_rpm
290
+ --help
291
+ * add API for system monitoring daemons (refer to KB articles); changed
292
+ API for manual starting of the agent; refer to
293
+ NewRelic::Agent.manual_start for details
294
+ * do certificate verification on ssl connections to
295
+ collector.newrelic.com
296
+ * support instances appearing in more than one application by allowing a
297
+ semicolon separated list of names for the newrelic.yml app_name
298
+ setting.
299
+ * combined agent logfiles into a single logfile
300
+ * use rpm server time for transaction traces rather than agent time
301
+
302
+ Developer Mode (only) Enhancements
303
+ * show partial rendering in traces
304
+ * improved formatting of metric names in traces
305
+ * added number of queries to transactions in the transaction list
306
+ * added some sorting options for the transaction list
307
+ * added a page showing the list of active threads
308
+
309
+ Compatibility Enhancements
310
+ * ruby 1.9.1 compatibility
311
+ * support concurrency when determining busy times, for 2.2 compatibility
312
+ * in jruby, use Java used heap for memory sampling if the system memory
313
+ is not accessible from an unsupported platform
314
+ * jruby will no longer start the agent now when running the console or
315
+ rake tasks
316
+ * API support for RPM as a footnote add-in
317
+ * webrick support restored
318
+
319
+ Noteworthy bugfixes
320
+ * sample memory on linux by reading /proc/#{$$}/status file
321
+ * fixed ambiguous 'View' metrics showing up in controller breakdown
322
+ * removed Numeric extensions, including round_to, and to_ms
323
+ * using a different timeout mechanism when we post data to RPM
324
+ * remove usage of Rails::Info which had a side effect of enabling
325
+ ActiveRecord even when it wasn't an active framework
326
+ * moved CPU sampler off background thread and onto the harvest thread
327
+ * tests now run cleanly in any rails app using test:newrelic or
328
+ test:plugins
329
+
330
+ Agent improvements to support future RPM enhancements
331
+ * add instrumentation to capture metrics on response codes; not yet
332
+ working in rails 2.3.*
333
+ * added http referer to traced errors
334
+ * capture gem requirements from rails
335
+ * capture cpu utilization adjusted for processor count
336
+ * transaction sampling
337
+
338
+ v2.8.10.
339
+ * fix thin support with rails 2.3.2 when using script/server
340
+ * fix incompatibility with rails 2.3.2 and script/server options
341
+ processing
342
+ * minor tweak to environment gathering for gem mode
343
+
344
+ v2.8.9.
345
+ * fix problem finding the newrelic controller in dev mode
346
+ * fix incompatibility with older versions of optparse
347
+ * fix potential jvm problem with jruby
348
+ * remove test:all task definition to avoid conflicts
349
+ * change error message about window sampler in windows not supported to a
350
+ warning message
351
+
352
+ v2.8.8.
353
+ * fix error with jruby on windows
354
+ * fix problem where webrick was being incorrectly detected causing some
355
+ problems with mongrel application assignments--had to disable webrick
356
+ for now
357
+
358
+ v2.8.7.
359
+ * fix for ssl connection hanging problems
360
+ * fix problem recognizing mongrel in rails 2.3.2
361
+ * fastcgi support in rails 2.3.2
362
+ * put back webrick support
363
+
364
+ v2.8.6.
365
+ * fix for capture_params when using file uploads in controller actions
366
+ * use pure ruby NS lookup for collector host to eliminate possibly
367
+ blocking applications
368
+
369
+ v2.8.5.
370
+ * fix reference to CommandError which was breaking some cap scripts
371
+ * fix incompatibility with Rails 2.0 in the server API
372
+ * fix problem with litespeed with Lite accounts
373
+ * fix problem when ActiveRecord is disabled
374
+ * moved merb instrumentation to Merb::Controller instead of
375
+ AbstractController to address incompatibility with MailController
376
+ * fix problem in devmode displaying sql with embedded urls
377
+
378
+ v2.8.4.
379
+ * fix bug in capistrano recipe causing cap commands to fail with error
380
+ about not finding Version class
381
+
382
+ v2.8.3.
383
+ * refactor unit tests so they will run in a generic rails environment
384
+ * require classes in advance to avoid autoloading. this is to address
385
+ incompatibilities with desert as well as more flexibility in gem
386
+ initialization
387
+ * fixed newrelic_helper.rb 1.9 incompatibility
388
+
389
+ v2.8.2.
390
+ * fix Ruby 1.9 syntax compatibility errors
391
+ * update the class loading sanity check, will notify server of errors
392
+ * fix agent output on script and rake task execution
393
+
394
+ v2.8.1.
395
+ * Convert the deployment information upload script to an executable and
396
+ put in the bin directory. When installed as a gem this command is
397
+ symlinked to /usr/bin. Usage: newrelic_cmd deployments --help
398
+ * Fix issue invoking api when host is not set in newrelic.yml
399
+ * Fix deployments api so it will work from a gem
400
+ * Fix thin incompatibility in developer mode
401
+
402
+ v2.8.0.
403
+ * add beta of api in new_relic_api.rb
404
+ * instrumented dynamic finders in ActiveRecord
405
+ * preliminary support for capturing deployment information via capistrano
406
+ * change memory sampler for solaris to use /usr/bin/ps
407
+ * allow ERB in newrelic.yml file
408
+ * merged support for merb into this version
409
+ * fix incompatibility in the developer mode with the safe_erb plugin
410
+ * fix module namespace issue causing an error accessing
411
+ NewRelic::Instrumentation modules
412
+ * fix issue where the agent sometimes failed to start up if there was a
413
+ transient network problem
414
+ * fix IgnoreSilentlyException message
415
+
416
+ v2.7.4.
417
+ * fix error when trying to serialize some kinds of Enumerable objects
418
+ * added extra debug logging
419
+ * added app_name to app mapping
420
+
421
+ v2.7.3.
422
+ * fix compatibility issue with 1.8.5 causing error with Dir.glob
423
+
424
+ v2.7.2.
425
+ * fix problem with passenger edge not being a detected environment
426
+
427
+ v2.7.1.
428
+ * fix problem with skipped dispatcher instrumentation
429
+
430
+ v2.7.0.
431
+ * Repackage to support both plugin and Gem installation
432
+ * Support passenger/litespeed/jruby application naming
433
+ * Update method for calculating dispatcher queue time
434
+ * Show stack traces in RPM Transaction Traces
435
+ * Capture error source for TemplateErrors
436
+ * Clean up error stack traces.
437
+ * Support query plans from postgres
438
+ * Performance tuning
439
+ * bugfixes
440
+
441
+ v2.5.3.
442
+ * fix error in transaction tracing causing traces not to show up
443
+
444
+ v2.5.2.
445
+ * fixes for postgres explain plan support
446
+
447
+ v2.5.1.
448
+ * bugfixes
449
+
450
+ v2.5.0.
451
+ * add agent support for rpm 1.1 features
452
+ * Fix regression error with thin support
453
+
454
+ v2.4.3.
455
+ * added 'newrelic_ignore' controller class method with :except and :only options for finer grained control
456
+ over the blocking of instrumentation in controllers.
457
+ * bugfixes
458
+
459
+ v2.4.2.
460
+ * error reporting in early access
461
+
462
+ v2.4.1.
463
+ * bugfix: initializing developer mode
464
+
465
+ v2.4.0.
466
+ * Beta support for LiteSpeed and Passenger
467
+
468
+ v2.3.7.
469
+ * bugfixes
470
+
471
+ v2.3.6.
472
+ * bugfixes
473
+
474
+ v2.3.5.
475
+ * bugfixes: pie chart data, rails 1.1 compability
476
+
477
+ v2.3.4.
478
+ * bugfix
479
+
480
+ v2.3.3.
481
+ * bugfix for non-mysql databases
482
+
483
+ v2.3.2.
484
+ * bugfixes
485
+ * Add enhancement for Transaction Traces early access feature
486
+
487
+ v2.3.1.
488
+ * bugfixes
489
+
490
+ v2.3.0.
491
+ + Add support for Transaction Traces early access feature
492
+
493
+ v2.2.2.
494
+ * bugfixes
495
+
496
+ v2.2.1.
497
+ + Add rails 2.1 support for Developer Mode
498
+ + Changes to memory sampler: Add support for JRuby and fix Solaris support.
499
+ * Stop catching exceptions and start catching StandardError; other exception cleanup
500
+ * Add protective exception catching to the stats engine
501
+ * Improved support for thin domain sockets
502
+ * Support JRuby environments
503
+
504
+ v2.1.6.
505
+ * bugfixes
506
+
507
+ v2.1.5.
508
+ * bugfixes
509
+
510
+ v2.1.4.
511
+ * bugfixes
512
+
513
+ v2.1.3.
514
+ * bugfixes
515
+
516
+ v2.1.2.
517
+ * bugfixes
518
+
519
+ v2.1.1.
520
+ * bugfixes
521
+
522
+ v2.1.0.
523
+ * release for private beta
524
+
525
+