newrelic_rpm 2.13.5.beta4 → 2.13.6.beta1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of newrelic_rpm might be problematic. Click here for more details.

Files changed (60) hide show
  1. data/CHANGELOG +8 -0
  2. data/cert/cacert.pem +21 -0
  3. data/lib/conditional_vendored_dependency_detection.rb +3 -0
  4. data/lib/new_relic/agent/agent.rb +14 -1
  5. data/lib/new_relic/agent/instrumentation/active_merchant.rb +15 -12
  6. data/lib/new_relic/agent/instrumentation/acts_as_solr.rb +38 -21
  7. data/lib/new_relic/agent/instrumentation/authlogic.rb +9 -4
  8. data/lib/new_relic/agent/instrumentation/controller_instrumentation.rb +364 -364
  9. data/lib/new_relic/agent/instrumentation/data_mapper.rb +142 -121
  10. data/lib/new_relic/agent/instrumentation/delayed_job_instrumentation.rb +17 -16
  11. data/lib/new_relic/agent/instrumentation/memcache.rb +40 -26
  12. data/lib/new_relic/agent/instrumentation/net.rb +19 -13
  13. data/lib/new_relic/agent/instrumentation/passenger_instrumentation.rb +27 -15
  14. data/lib/new_relic/agent/instrumentation/rails/active_record_instrumentation.rb +80 -71
  15. data/lib/new_relic/agent/instrumentation/rails3/active_record_instrumentation.rb +84 -72
  16. data/lib/new_relic/agent/instrumentation/sequel.rb +84 -70
  17. data/lib/new_relic/agent/instrumentation/sinatra.rb +44 -37
  18. data/lib/new_relic/agent/instrumentation/sunspot.rb +18 -12
  19. data/lib/new_relic/agent/instrumentation/unicorn_instrumentation.rb +13 -7
  20. data/lib/new_relic/agent/method_tracer.rb +1 -1
  21. data/lib/new_relic/agent/samplers/cpu_sampler.rb +2 -0
  22. data/lib/new_relic/agent/stats_engine/metric_stats.rb +1 -1
  23. data/lib/new_relic/control.rb +1 -0
  24. data/lib/new_relic/control/instrumentation.rb +1 -0
  25. data/lib/new_relic/delayed_job_injection.rb +23 -14
  26. data/lib/new_relic/version.rb +2 -2
  27. data/lib/newrelic_rpm.rb +5 -0
  28. data/newrelic_rpm.gemspec +25 -23
  29. data/test/new_relic/agent/{agent_connect_test.rb → agent/connect_test.rb} +2 -2
  30. data/test/new_relic/agent/{agent_start_test.rb → agent/start_test.rb} +17 -3
  31. data/test/new_relic/agent/{agent_start_worker_thread_test.rb → agent/start_worker_thread_test.rb} +2 -2
  32. data/test/new_relic/agent/{agent_controller_test.rb → agent_test_controller_test.rb} +6 -3
  33. data/test/new_relic/agent/{error_collector_notice_error_test.rb → error_collector/notice_error_test.rb} +2 -2
  34. data/test/new_relic/agent/{active_record_instrumentation_test.rb → instrumentation/active_record_instrumentation_test.rb} +2 -2
  35. data/test/new_relic/agent/{metric_frame_test.rb → instrumentation/metric_frame_test.rb} +2 -3
  36. data/test/new_relic/agent/{net_instrumentation_test.rb → instrumentation/net_instrumentation_test.rb} +4 -4
  37. data/test/new_relic/agent/{queue_time_test.rb → instrumentation/queue_time_test.rb} +1 -1
  38. data/test/new_relic/agent/{task_instrumentation_test.rb → instrumentation/task_instrumentation_test.rb} +29 -32
  39. data/test/new_relic/agent/method_tracer/class_methods/add_method_tracer_test.rb +165 -0
  40. data/test/new_relic/agent/{method_tracer_trace_execution_scoped_test.rb → method_tracer/instance_methods/trace_execution_scoped_test.rb} +2 -2
  41. data/test/new_relic/agent/method_tracer_test.rb +31 -3
  42. data/test/new_relic/agent/rpm_agent_test.rb +8 -3
  43. data/test/new_relic/{agent/collection_helper_test.rb → collection_helper_test.rb} +4 -4
  44. data/test/new_relic/{deployments_api_test.rb → command/deployments_test.rb} +3 -5
  45. data/test/new_relic/control_test.rb +3 -3
  46. data/test/new_relic/{environment_test.rb → local_environment_test.rb} +2 -5
  47. data/test/new_relic/metric_spec_test.rb +32 -122
  48. data/test/new_relic/stats_test.rb +0 -1
  49. data/test/new_relic/{agent/transaction_sample_subtest_test.rb → transaction_sample_subtest_test.rb} +0 -0
  50. data/test/new_relic/{agent/transaction_sample_test.rb → transaction_sample_test.rb} +1 -2
  51. data/test/test_helper.rb +1 -0
  52. data/vendor/gems/dependency_detection-0.0.1.build/LICENSE +19 -0
  53. data/vendor/gems/dependency_detection-0.0.1.build/README +0 -0
  54. data/vendor/gems/dependency_detection-0.0.1.build/lib/dependency_detection.rb +57 -0
  55. data/vendor/gems/dependency_detection-0.0.1.build/lib/dependency_detection/version.rb +3 -0
  56. metadata +29 -27
  57. data/test/new_relic/agent/add_method_tracer_test.rb +0 -158
  58. data/test/new_relic/agent/metric_data_test.rb +0 -53
  59. data/test/new_relic/agent/testable_agent.rb +0 -13
  60. data/test/new_relic/shim_agent_test.rb +0 -9
@@ -1,7 +1,7 @@
1
1
  ENV['SKIP_RAILS'] = 'true'
2
2
  require File.expand_path('../../../test_helper', __FILE__)
3
3
 
4
- class RpmAgentTest < Test::Unit::TestCase # ActiveSupport::TestCase
4
+ class NewRelic::Agent::RpmAgentTest < Test::Unit::TestCase # ActiveSupport::TestCase
5
5
  extend TestContexts
6
6
 
7
7
  attr_reader :agent
@@ -48,6 +48,7 @@ class RpmAgentTest < Test::Unit::TestCase # ActiveSupport::TestCase
48
48
  assert !@agent.started?
49
49
  @agent.start
50
50
  assert @agent.started?
51
+ NewRelic::Agent.shutdown
51
52
  end
52
53
 
53
54
  should "manual_start" do
@@ -55,17 +56,20 @@ class RpmAgentTest < Test::Unit::TestCase # ActiveSupport::TestCase
55
56
  NewRelic::Agent.instance.expects(:start_worker_thread).once
56
57
  NewRelic::Agent.instance.instance_variable_set '@started', nil
57
58
  NewRelic::Agent.manual_start :monitor_mode => true, :license_key => ('x' * 40)
59
+ NewRelic::Agent.shutdown
58
60
  end
59
61
 
60
62
  should "post_fork_handler" do
61
63
  NewRelic::Agent.manual_start :monitor_mode => true, :license_key => ('x' * 40)
62
64
  NewRelic::Agent.after_fork
63
- NewRelic::Agent.after_fork
65
+ NewRelic::Agent.after_fork
66
+ NewRelic::Agent.shutdown
64
67
  end
65
68
  should "manual_overrides" do
66
69
  NewRelic::Agent.manual_start :app_name => "testjobs", :dispatcher_instance_id => "mailer"
67
70
  assert_equal "testjobs", NewRelic::Control.instance.app_names[0]
68
71
  assert_equal "mailer", NewRelic::Control.instance.dispatcher_instance_id
72
+ NewRelic::Agent.shutdown
69
73
  end
70
74
 
71
75
  should "restart" do
@@ -73,11 +77,12 @@ class RpmAgentTest < Test::Unit::TestCase # ActiveSupport::TestCase
73
77
  NewRelic::Agent.manual_start :app_name => "testjobs", :dispatcher_instance_id => "mailer"
74
78
  assert_equal "testjobs", NewRelic::Control.instance.app_names[0]
75
79
  assert_equal "mailer", NewRelic::Control.instance.dispatcher_instance_id
80
+ NewRelic::Agent.shutdown
76
81
  end
77
82
 
78
83
  should "send_timeslice_data" do
79
84
  # this test fails due to a rubinius bug
80
- return if (RUBY_VERSION =~ /rubinius/i)
85
+ return if (RUBY_DESCRIPTION =~ /rubinius/i)
81
86
  @agent.expects(:invoke_remote).returns({NewRelic::MetricSpec.new("/A/b/c") => 1, NewRelic::MetricSpec.new("/A/b/c", "/X") => 2, NewRelic::MetricSpec.new("/A/b/d") => 3 }.to_a)
82
87
  @agent.send :harvest_and_send_timeslice_data
83
88
  assert_equal 3, @agent.metric_ids.size
@@ -1,13 +1,13 @@
1
- require File.expand_path(File.join(File.dirname(__FILE__),'..','..','test_helper'))
1
+ require File.expand_path(File.join(File.dirname(__FILE__),'..','test_helper'))
2
2
  require 'ostruct'
3
3
  require 'active_record_fixtures' if defined?(::ActiveRecord)
4
4
 
5
5
  require 'new_relic/collection_helper'
6
- class NewRelic::Agent::CollectionHelperTest < Test::Unit::TestCase
6
+ class NewRelic::CollectionHelperTest < Test::Unit::TestCase
7
7
 
8
8
  def setup
9
+ NewRelic::Agent.manual_start
9
10
  super
10
- NewRelic::Agent.manual_start
11
11
  end
12
12
  def teardown
13
13
  super
@@ -114,7 +114,7 @@ class NewRelic::Agent::CollectionHelperTest < Test::Unit::TestCase
114
114
  flunk "should throw"
115
115
  rescue => e
116
116
  #puts e
117
- #puts e.backtrace.join("\n")
117
+ #puts e.backtrace.grep(/trace/).join("\n")
118
118
  #puts "\n\n"
119
119
  clean_trace = strip_nr_from_backtrace(e.backtrace)
120
120
  assert_equal 0, clean_trace.grep(/newrelic_rpm/).size, clean_trace.join("\n")
@@ -1,9 +1,7 @@
1
- require File.expand_path(File.join(File.dirname(__FILE__),'/../test_helper'))
2
- require File.expand_path(File.join(File.dirname(__FILE__),'/../../lib/new_relic/command'))
3
- require 'rubygems'
4
- require 'mocha'
1
+ require File.expand_path(File.join(File.dirname(__FILE__),'/../../test_helper'))
2
+ require File.expand_path(File.join(File.dirname(__FILE__),'/../../../lib/new_relic/command'))
5
3
 
6
- class NewRelic::DeploymentsTest < Test::Unit::TestCase
4
+ class NewRelic::Command::DeploymentsTest < Test::Unit::TestCase
7
5
 
8
6
  def setup
9
7
  NewRelic::Command::Deployments.class_eval do
@@ -1,13 +1,13 @@
1
- ENV['SKIP_RAILS'] = 'true'
2
1
  require File.expand_path(File.join(File.dirname(__FILE__),'/../test_helper'))
3
-
4
2
  class NewRelic::ControlTest < Test::Unit::TestCase
5
3
 
6
4
  attr_reader :c
7
5
 
8
6
  def setup
9
- NewRelic::Agent.manual_start
7
+
8
+ NewRelic::Agent.manual_start(:dispatcher_instance_id => 'test')
10
9
  @c = NewRelic::Control.instance
10
+ raise 'oh geez, wrong class' unless NewRelic::Control.instance.is_a?(::NewRelic::Control::Frameworks::Test)
11
11
  end
12
12
  def shutdown
13
13
  NewRelic::Agent.shutdown
@@ -1,8 +1,5 @@
1
1
  require File.expand_path(File.join(File.dirname(__FILE__),'..', 'test_helper'))
2
- require "test/unit"
3
- require "mocha"
4
- ##require 'new_relic/local_environment'
5
- class EnvironmentTest < Test::Unit::TestCase # ActiveSupport::TestCase
2
+ class NewRelic::LocalEnvironmentTest < Test::Unit::TestCase
6
3
 
7
4
  def teardown
8
5
  # To remove mock server instances from ObjectSpace
@@ -72,4 +69,4 @@ class EnvironmentTest < Test::Unit::TestCase # ActiveSupport::TestCase
72
69
  ARGV.pop
73
70
  end
74
71
 
75
- end
72
+ end
@@ -1,18 +1,5 @@
1
1
  require File.expand_path(File.join(File.dirname(__FILE__),'..', 'test_helper'))
2
- ##require "new_relic/stats"
3
- class NewRelic::MetricSpecTest < Test::Unit::TestCase
4
-
5
- def test_simple
6
- stats = NewRelic::MethodTraceStats.new
7
- validate stats, 0, 0, 0, 0
8
-
9
- assert_equal stats.call_count,0
10
- stats.trace_call 10
11
- stats.trace_call 20
12
- stats.trace_call 30
13
-
14
- validate stats, 3, (10+20+30), 10, 30
15
- end
2
+ class NewRelic::MetricSpecTest < Test::Unit::TestCase
16
3
 
17
4
  def test_equal
18
5
  spec1 = NewRelic::MetricSpec.new('Controller')
@@ -50,128 +37,51 @@ class NewRelic::MetricSpecTest < Test::Unit::TestCase
50
37
  assert_equal [s2, s1].sort, [s2, s1] # unchanged due to no sort criteria
51
38
  assert_equal [s1, s2].sort, [s1, s2] # unchanged due to no sort criteria
52
39
  end
53
-
54
- def test_merge
55
- s1 = NewRelic::MethodTraceStats.new
56
- s2 = NewRelic::MethodTraceStats.new
40
+
41
+ # test to make sure the MetricSpec class can serialize to json
42
+ def test_json
43
+ spec = NewRelic::MetricSpec.new("controller", "metric#find")
57
44
 
58
- s1.trace_call 10
59
- s2.trace_call 20
60
- s2.freeze
45
+ import = ::ActiveSupport::JSON.decode(spec.to_json)
61
46
 
62
- validate s2, 1, 20, 20, 20
63
- s3 = s1.merge s2
64
- validate s3, 2, (10+20), 10, 20
65
- validate s1, 1, 10, 10, 10
66
- validate s2, 1, 20, 20, 20
47
+ compare_spec(spec, import)
67
48
 
68
- s1.merge! s2
69
- validate s1, 2, (10+20), 10, 20
70
- validate s2, 1, 20, 20, 20
71
- end
72
-
73
- def test_merge_with_exclusive
74
- s1 = NewRelic::MethodTraceStats.new
49
+ stats = NewRelic::MethodTraceStats.new
75
50
 
76
- s2 = NewRelic::MethodTraceStats.new
51
+ import = ::ActiveSupport::JSON.decode(stats.to_json)
77
52
 
78
- s1.trace_call 10, 5
79
- s2.trace_call 20, 10
80
- s2.freeze
53
+ compare_stat(stats, import)
81
54
 
82
- validate s2, 1, 20, 20, 20, 10
83
- s3 = s1.merge s2
84
- validate s3, 2, (10+20), 10, 20, (10+5)
85
- validate s1, 1, 10, 10, 10, 5
86
- validate s2, 1, 20, 20, 20, 10
55
+ metric_data = NewRelic::MetricData.new(spec, stats, 10)
87
56
 
88
- s1.merge! s2
89
- validate s1, 2, (10+20), 10, 20, (5+10)
90
- validate s2, 1, 20, 20, 20, 10
91
- end
92
-
93
- def test_merge_array
94
- s1 = NewRelic::MethodTraceStats.new
95
- merges = []
96
- merges << (NewRelic::MethodTraceStats.new.trace_call 1)
97
- merges << (NewRelic::MethodTraceStats.new.trace_call 1)
98
- merges << (NewRelic::MethodTraceStats.new.trace_call 1)
57
+ import = ::ActiveSupport::JSON.decode(metric_data.to_json)
99
58
 
100
- s1.merge! merges
101
- validate s1, 3, 3, 1, 1
59
+ compare_metric_data(metric_data, import)
102
60
  end
103
61
 
104
- def test_freeze
105
- s1 = NewRelic::MethodTraceStats.new
106
-
107
- s1.trace_call 10
108
- s1.freeze
109
-
110
- begin
111
- # the following should throw an exception because s1 is frozen
112
- s1.trace_call 20
113
- assert false
114
- rescue StandardError
115
- assert s1.frozen?
116
- validate s1, 1, 10, 10, 10
117
- end
118
- end
119
62
 
120
- def test_std_dev
121
- s = NewRelic::MethodTraceStats.new
122
-
123
- s.trace_call 10
124
- s.trace_call 10
125
- s.trace_call 10
126
- s.trace_call 10
127
- s.trace_call 10
128
- s.trace_call 10
129
- assert s.standard_deviation == 0
130
-
131
- s = NewRelic::MethodTraceStats.new
132
- s.trace_call 4
133
- s.trace_call 7
134
- s.trace_call 13
135
- s.trace_call 16
136
- s.trace_call 8
137
- s.trace_call 4
138
- assert_equal(s.sum_of_squares, 4**2 + 7**2 + 13**2 + 16**2 + 8**2 + 4**2)
139
-
140
- s.trace_call 9
141
- s.trace_call 3
142
- s.trace_call 1000
143
- s.trace_call 4
144
-
145
- # calculated stdev (population, not sample) from a spreadsheet.
146
- assert_in_delta(s.standard_deviation, 297.76, 0.01)
63
+ private
64
+
65
+ def compare_spec(spec, import)
66
+ assert_equal 2, import.length
67
+ assert_equal spec.name, import['name']
68
+ assert_equal spec.scope, import['scope']
147
69
  end
148
70
 
149
- def test_std_dev_merge
150
- s1 = NewRelic::MethodTraceStats.new
151
- s1.trace_call 4
152
- s1.trace_call 7
153
-
154
- s2 = NewRelic::MethodTraceStats.new
155
- s2.trace_call 13
156
- s2.trace_call 16
157
-
158
- s3 = s1.merge(s2)
159
-
160
- assert_equal(s1.sum_of_squares, 4*4 + 7*7)
161
- assert_in_delta(s1.standard_deviation, 1.5, 0.01)
162
-
163
- assert_in_delta(s2.standard_deviation, 1.5, 0.01)
164
- assert_equal(s3.sum_of_squares, 4*4 + 7*7 + 13*13 + 16*16, "check sum of squares")
165
- assert_in_delta(s3.standard_deviation, 4.743, 0.01)
71
+ def compare_stat(stats, import)
72
+ assert_equal 6, import.length
73
+ assert_equal stats.total_call_time, import['total_call_time']
74
+ assert_equal stats.max_call_time, import['max_call_time']
75
+ assert_equal stats.min_call_time, import['min_call_time']
76
+ assert_equal stats.sum_of_squares, import['sum_of_squares']
77
+ assert_equal stats.call_count, import['call_count']
78
+ assert_equal stats.total_exclusive_time, import['total_exclusive_time']
166
79
  end
167
80
 
168
- private
169
- def validate (stats, count, total, min, max, exclusive = nil)
170
- assert_equal stats.call_count, count
171
- assert_equal stats.total_call_time, total
172
- assert_equal stats.average_call_time, (count > 0 ? total / count : 0)
173
- assert_equal stats.min_call_time, min
174
- assert_equal stats.max_call_time, max
175
- assert_equal stats.total_exclusive_time, exclusive if exclusive
81
+ def compare_metric_data(metric_data, import)
82
+ assert_equal 3, import.length
83
+ assert_equal metric_data.metric_id, import['metric_id']
84
+ compare_spec(metric_data.metric_spec, import['metric_spec']) unless metric_data.metric_id
85
+ compare_stat(metric_data.stats, import['stats'])
176
86
  end
177
87
  end
@@ -13,7 +13,6 @@ end; end
13
13
 
14
14
 
15
15
  class NewRelic::StatsTest < Test::Unit::TestCase
16
-
17
16
  def test_sum_attributes
18
17
  first = NewRelic::TestObjectForStats.new
19
18
  second = mock('other object')
@@ -1,5 +1,4 @@
1
- ENV['SKIP_RAILS'] = 'true'
2
- require File.expand_path('../../../test_helper.rb', __FILE__)
1
+ require File.expand_path('../../test_helper.rb', __FILE__)
3
2
 
4
3
  class NewRelic::TransactionSampleTest < Test::Unit::TestCase
5
4
  include TransactionSampleTestHelper
data/test/test_helper.rb CHANGED
@@ -24,6 +24,7 @@ rescue LoadError
24
24
  puts "Unable to load Rails for New Relic tests"
25
25
  raise
26
26
  end
27
+ require 'newrelic_rpm'
27
28
 
28
29
  require 'test/unit'
29
30
  require 'shoulda'
@@ -0,0 +1,19 @@
1
+ Copyright (c) 2010-2011 Justin George
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ of this software and associated documentation files (the "Software"), to deal
5
+ in the Software without restriction, including without limitation the rights
6
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
+ copies of the Software, and to permit persons to whom the Software is
8
+ furnished to do so, subject to the following conditions:
9
+
10
+ The above copyright notice and this permission notice shall be included in
11
+ all copies or substantial portions of the Software.
12
+
13
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
+ THE SOFTWARE.
@@ -0,0 +1,57 @@
1
+ require 'dependency_detection/version'
2
+ module DependencyDetection
3
+
4
+ module_function
5
+ @@items = []
6
+ def defer(&block)
7
+ item = Dependent.new
8
+ item.instance_eval(&block)
9
+ @@items << item
10
+ end
11
+
12
+ def detect!
13
+ @@items.each do |item|
14
+ if item.dependencies_satisfied?
15
+ item.execute
16
+ end
17
+ end
18
+ end
19
+
20
+ class Dependent
21
+ attr_reader :executed
22
+ def executed!
23
+ @executed = true
24
+ end
25
+
26
+ attr_reader :dependencies
27
+
28
+ def initialize
29
+ @dependencies = []
30
+ @executes = []
31
+ end
32
+
33
+ def dependencies_satisfied?
34
+ !executed and check_dependencies
35
+ end
36
+
37
+ def execute
38
+ @executes.each do |x|
39
+ x.call
40
+ end
41
+ ensure
42
+ executed!
43
+ end
44
+
45
+ def check_dependencies
46
+ dependencies && dependencies.all? { |d| d.call }
47
+ end
48
+
49
+ def depends_on
50
+ @dependencies << Proc.new
51
+ end
52
+
53
+ def executes
54
+ @executes << Proc.new
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,3 @@
1
+ module DependencyDetection
2
+ VERSION='0.0.1.build'
3
+ end
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: newrelic_rpm
3
3
  version: !ruby/object:Gem::Version
4
- hash: 62196243
4
+ hash: 62196225
5
5
  prerelease: 7
6
6
  segments:
7
7
  - 2
8
8
  - 13
9
- - 5
9
+ - 6
10
10
  - beta
11
- - 4
12
- version: 2.13.5.beta4
11
+ - 1
12
+ version: 2.13.6.beta1
13
13
  platform: ruby
14
14
  authors:
15
15
  - Bill Kayser
@@ -18,7 +18,7 @@ autorequire:
18
18
  bindir: bin
19
19
  cert_chain: []
20
20
 
21
- date: 2011-03-07 00:00:00 -08:00
21
+ date: 2011-03-21 00:00:00 -07:00
22
22
  default_executable:
23
23
  dependencies:
24
24
  - !ruby/object:Gem::Dependency
@@ -73,9 +73,9 @@ description: |
73
73
 
74
74
  email: support@newrelic.com
75
75
  executables:
76
- - mongrel_rpm
77
- - newrelic
78
76
  - newrelic_cmd
77
+ - newrelic
78
+ - mongrel_rpm
79
79
  extensions: []
80
80
 
81
81
  extra_rdoc_files:
@@ -92,6 +92,7 @@ files:
92
92
  - bin/newrelic_cmd
93
93
  - cert/cacert.pem
94
94
  - install.rb
95
+ - lib/conditional_vendored_dependency_detection.rb
95
96
  - lib/conditional_vendored_metric_parser.rb
96
97
  - lib/new_relic/agent.rb
97
98
  - lib/new_relic/agent/agent.rb
@@ -182,44 +183,41 @@ files:
182
183
  - test/active_record_fixtures.rb
183
184
  - test/config/newrelic.yml
184
185
  - test/config/test_control.rb
185
- - test/new_relic/agent/active_record_instrumentation_test.rb
186
- - test/new_relic/agent/add_method_tracer_test.rb
187
- - test/new_relic/agent/agent_connect_test.rb
188
- - test/new_relic/agent/agent_controller_test.rb
189
- - test/new_relic/agent/agent_start_test.rb
190
- - test/new_relic/agent/agent_start_worker_thread_test.rb
186
+ - test/new_relic/agent/agent/connect_test.rb
187
+ - test/new_relic/agent/agent/start_test.rb
188
+ - test/new_relic/agent/agent/start_worker_thread_test.rb
191
189
  - test/new_relic/agent/agent_test_controller.rb
190
+ - test/new_relic/agent/agent_test_controller_test.rb
192
191
  - test/new_relic/agent/apdex_from_server_test.rb
193
192
  - test/new_relic/agent/busy_calculator_test.rb
194
- - test/new_relic/agent/collection_helper_test.rb
195
- - test/new_relic/agent/error_collector_notice_error_test.rb
193
+ - test/new_relic/agent/error_collector/notice_error_test.rb
196
194
  - test/new_relic/agent/error_collector_test.rb
195
+ - test/new_relic/agent/instrumentation/active_record_instrumentation_test.rb
196
+ - test/new_relic/agent/instrumentation/metric_frame_test.rb
197
+ - test/new_relic/agent/instrumentation/net_instrumentation_test.rb
198
+ - test/new_relic/agent/instrumentation/queue_time_test.rb
199
+ - test/new_relic/agent/instrumentation/task_instrumentation_test.rb
197
200
  - test/new_relic/agent/memcache_instrumentation_test.rb
201
+ - test/new_relic/agent/method_tracer/class_methods/add_method_tracer_test.rb
202
+ - test/new_relic/agent/method_tracer/instance_methods/trace_execution_scoped_test.rb
198
203
  - test/new_relic/agent/method_tracer_test.rb
199
- - test/new_relic/agent/method_tracer_trace_execution_scoped_test.rb
200
- - test/new_relic/agent/metric_data_test.rb
201
- - test/new_relic/agent/metric_frame_test.rb
202
204
  - test/new_relic/agent/mock_scope_listener.rb
203
- - test/new_relic/agent/net_instrumentation_test.rb
204
- - test/new_relic/agent/queue_time_test.rb
205
205
  - test/new_relic/agent/rpm_agent_test.rb
206
206
  - test/new_relic/agent/stats_engine/metric_stats_test.rb
207
207
  - test/new_relic/agent/stats_engine/samplers_test.rb
208
208
  - test/new_relic/agent/stats_engine/stats_engine_test.rb
209
- - test/new_relic/agent/task_instrumentation_test.rb
210
- - test/new_relic/agent/testable_agent.rb
211
209
  - test/new_relic/agent/transaction_sample_builder_test.rb
212
- - test/new_relic/agent/transaction_sample_subtest_test.rb
213
- - test/new_relic/agent/transaction_sample_test.rb
214
210
  - test/new_relic/agent/transaction_sampler_test.rb
215
211
  - test/new_relic/agent/worker_loop_test.rb
212
+ - test/new_relic/collection_helper_test.rb
213
+ - test/new_relic/command/deployments_test.rb
216
214
  - test/new_relic/control_test.rb
217
- - test/new_relic/deployments_api_test.rb
218
- - test/new_relic/environment_test.rb
215
+ - test/new_relic/local_environment_test.rb
219
216
  - test/new_relic/metric_spec_test.rb
220
217
  - test/new_relic/rack/episodes_test.rb
221
- - test/new_relic/shim_agent_test.rb
222
218
  - test/new_relic/stats_test.rb
219
+ - test/new_relic/transaction_sample_subtest_test.rb
220
+ - test/new_relic/transaction_sample_test.rb
223
221
  - test/new_relic/version_number_test.rb
224
222
  - test/test_contexts.rb
225
223
  - test/test_helper.rb
@@ -254,6 +252,10 @@ files:
254
252
  - ui/views/newrelic/show_sample.rhtml
255
253
  - ui/views/newrelic/show_source.rhtml
256
254
  - ui/views/newrelic/threads.rhtml
255
+ - vendor/gems/dependency_detection-0.0.1.build/LICENSE
256
+ - vendor/gems/dependency_detection-0.0.1.build/README
257
+ - vendor/gems/dependency_detection-0.0.1.build/lib/dependency_detection.rb
258
+ - vendor/gems/dependency_detection-0.0.1.build/lib/dependency_detection/version.rb
257
259
  - vendor/gems/metric_parser-0.1.0.pre1/LICENSE
258
260
  - vendor/gems/metric_parser-0.1.0.pre1/README
259
261
  - vendor/gems/metric_parser-0.1.0.pre1/lib/metric_parser.rb