newrelic_rpm 3.18.1.330 → 4.0.0.332
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +2 -74
- data/CHANGELOG.md +77 -0
- data/CONTRIBUTING.md +14 -6
- data/LICENSE +1 -88
- data/lib/new_relic/agent.rb +2 -103
- data/lib/new_relic/agent/agent.rb +3 -32
- data/lib/new_relic/agent/commands/thread_profiler_session.rb +2 -6
- data/lib/new_relic/agent/configuration/default_source.rb +1 -8
- data/lib/new_relic/agent/configuration/yaml_source.rb +1 -12
- data/lib/new_relic/agent/cross_app_monitor.rb +2 -1
- data/lib/new_relic/agent/cross_app_tracing.rb +4 -2
- data/lib/new_relic/agent/datastores/mongo.rb +1 -1
- data/lib/new_relic/agent/datastores/redis.rb +1 -1
- data/lib/new_relic/agent/encoding_normalizer.rb +1 -20
- data/lib/new_relic/agent/error_collector.rb +8 -21
- data/lib/new_relic/agent/inbound_request_monitor.rb +4 -1
- data/lib/new_relic/agent/instrumentation/active_record_helper.rb +14 -30
- data/lib/new_relic/agent/instrumentation/active_record_subscriber.rb +1 -1
- data/lib/new_relic/agent/instrumentation/controller_instrumentation.rb +4 -5
- data/lib/new_relic/agent/instrumentation/curb.rb +2 -2
- data/lib/new_relic/agent/instrumentation/excon.rb +3 -3
- data/lib/new_relic/agent/instrumentation/grape.rb +3 -3
- data/lib/new_relic/agent/instrumentation/httpclient.rb +2 -2
- data/lib/new_relic/agent/instrumentation/memcache/dalli.rb +2 -2
- data/lib/new_relic/agent/instrumentation/middleware_proxy.rb +2 -2
- data/lib/new_relic/agent/instrumentation/middleware_tracing.rb +3 -7
- data/lib/new_relic/agent/instrumentation/queue_time.rb +13 -15
- data/lib/new_relic/agent/instrumentation/rack.rb +4 -50
- data/lib/new_relic/agent/instrumentation/rake.rb +1 -1
- data/lib/new_relic/agent/instrumentation/resque.rb +1 -2
- data/lib/new_relic/agent/instrumentation/sinatra.rb +0 -1
- data/lib/new_relic/agent/instrumentation/typhoeus.rb +2 -2
- data/lib/new_relic/agent/javascript_instrumentor.rb +3 -2
- data/lib/new_relic/agent/method_tracer.rb +1 -60
- data/lib/new_relic/agent/new_relic_service.rb +3 -2
- data/lib/new_relic/agent/new_relic_service/encoders.rb +5 -6
- data/lib/new_relic/agent/new_relic_service/json_marshaller.rb +7 -16
- data/lib/new_relic/agent/pipe_channel_manager.rb +1 -3
- data/lib/new_relic/agent/pipe_service.rb +1 -3
- data/lib/new_relic/agent/rules_engine.rb +2 -17
- data/lib/new_relic/agent/stats_engine.rb +0 -2
- data/lib/new_relic/agent/stats_engine/metric_stats.rb +0 -48
- data/lib/new_relic/agent/supported_versions.rb +12 -19
- data/lib/new_relic/agent/threading/backtrace_service.rb +1 -1
- data/lib/new_relic/agent/transaction.rb +0 -3
- data/lib/new_relic/agent/transaction/attributes.rb +1 -10
- data/lib/new_relic/agent/vm.rb +1 -4
- data/lib/new_relic/agent/vm/jruby_vm.rb +1 -3
- data/lib/new_relic/agent/vm/mri_vm.rb +2 -10
- data/lib/new_relic/control.rb +1 -2
- data/lib/new_relic/control/frameworks/rails.rb +1 -1
- data/lib/new_relic/control/frameworks/rails3.rb +1 -2
- data/lib/new_relic/control/frameworks/rails4.rb +1 -1
- data/lib/new_relic/control/frameworks/rails5.rb +1 -1
- data/lib/new_relic/control/instance_methods.rb +1 -1
- data/{vendor/gems/dependency_detection-0.0.1.build/lib → lib/new_relic}/dependency_detection.rb +0 -1
- data/lib/new_relic/helper.rb +6 -13
- data/lib/new_relic/language_support.rb +44 -139
- data/lib/new_relic/metric_spec.rb +0 -17
- data/lib/new_relic/noticed_error.rb +18 -27
- data/lib/new_relic/version.rb +3 -48
- data/lib/tasks/versions.rake +7 -5
- data/newrelic_rpm.gemspec +1 -16
- data/test/agent_helper.rb +4 -2
- data/test/environments/lib/environments/runner.rb +5 -14
- data/test/environments/norails/Gemfile +0 -8
- data/test/environments/rails21/Gemfile +0 -8
- data/test/environments/rails21/config/database.yml +1 -1
- data/test/environments/rails22/Gemfile +0 -8
- data/test/environments/rails22/config/database.yml +1 -1
- data/test/environments/rails23/Gemfile +1 -7
- data/test/environments/rails23/config/database.yml +1 -1
- data/test/environments/rails30/Gemfile +0 -1
- data/test/environments/rails30/config/database.yml +1 -1
- data/test/environments/rails31/Gemfile +0 -3
- data/test/environments/rails31/config/database.yml +1 -1
- data/test/environments/rails32/Gemfile +0 -3
- data/test/environments/rails32/config/database.yml +1 -1
- data/test/environments/rails40/Gemfile +0 -26
- data/test/environments/rails40/config/database.yml +1 -1
- data/test/environments/rails41/Gemfile +0 -18
- data/test/environments/rails41/config/database.yml +1 -1
- data/test/environments/rails42/Gemfile +0 -22
- data/test/environments/rails42/config/database.yml +1 -1
- data/test/environments/rails50/Gemfile +0 -13
- data/test/environments/rails50/config/database.yml +1 -1
- data/test/helpers/logging.rb +37 -0
- data/test/helpers/minitest.rb +50 -0
- data/test/helpers/misc.rb +87 -0
- data/test/helpers/transaction_sample.rb +44 -0
- data/test/multiverse/lib/multiverse/suite.rb +6 -91
- data/test/multiverse/script/runner +1 -1
- data/test/multiverse/suites/active_record/Envfile +1 -28
- data/test/multiverse/suites/active_record/active_record_test.rb +6 -6
- data/test/multiverse/suites/active_record/config/database.rb +2 -3
- data/test/multiverse/suites/active_record/config/database.yml +0 -2
- data/test/multiverse/suites/activemerchant/Envfile +4 -18
- data/test/multiverse/suites/agent_only/encoding_handling_test.rb +7 -15
- data/test/multiverse/suites/agent_only/error_events_test.rb +1 -7
- data/test/multiverse/suites/agent_only/harvest_timestamps_test.rb +4 -20
- data/test/multiverse/suites/agent_only/labels_test.rb +1 -1
- data/test/multiverse/suites/agent_only/marshaling_test.rb +5 -10
- data/test/multiverse/suites/agent_only/script/public_api_when_disabled.rb +0 -11
- data/test/multiverse/suites/agent_only/start_up_test.rb +3 -3
- data/test/multiverse/suites/agent_only/synthetics_test.rb +1 -1
- data/test/multiverse/suites/agent_only/thread_profiling_test.rb +0 -3
- data/test/multiverse/suites/agent_only/xray_sessions_test.rb +0 -3
- data/test/multiverse/suites/capistrano/Envfile +2 -4
- data/test/multiverse/suites/capistrano2/Envfile +0 -4
- data/test/multiverse/suites/curb/Envfile +3 -7
- data/test/multiverse/suites/datamapper/Envfile +2 -2
- data/test/multiverse/suites/datamapper/datamapper_test.rb +2 -2
- data/test/multiverse/suites/deferred_instrumentation/sinatra_test.rb +0 -1
- data/test/multiverse/suites/delayed_job/Envfile +28 -41
- data/test/multiverse/suites/excon/Envfile +0 -3
- data/test/multiverse/suites/grape/Envfile +0 -4
- data/test/multiverse/suites/grape/grape_versioning_test.rb +2 -2
- data/test/multiverse/suites/grape/grape_versioning_test_api.rb +2 -2
- data/test/multiverse/suites/json/Envfile +1 -9
- data/test/multiverse/suites/marshalling/Envfile +0 -9
- data/test/multiverse/suites/memcached/Envfile +5 -23
- data/test/multiverse/suites/mongo/Envfile +9 -11
- data/test/multiverse/suites/padrino/Envfile +0 -6
- data/test/multiverse/suites/rack/http_response_code_test.rb +0 -1
- data/test/multiverse/suites/rack/rack_auto_instrumentation_test.rb +5 -10
- data/test/multiverse/suites/rack/rack_cascade_test.rb +0 -1
- data/test/multiverse/suites/rack/rack_env_mutation_test.rb +0 -1
- data/test/multiverse/suites/rack/response_content_type_test.rb +0 -1
- data/test/multiverse/suites/rails/Envfile +1 -19
- data/test/multiverse/suites/rails/activejob_test.rb +1 -2
- data/test/multiverse/suites/rails/error_tracing_test.rb +0 -13
- data/test/multiverse/suites/rails/gc_instrumentation_test.rb +12 -32
- data/test/multiverse/suites/rake/Envfile +15 -22
- data/test/multiverse/suites/redis/redis_instrumentation_test.rb +1 -1
- data/test/multiverse/suites/sequel/database.rb +1 -4
- data/test/multiverse/suites/sidekiq/Envfile +13 -23
- data/test/multiverse/suites/sinatra/sinatra_test_cases.rb +3 -3
- data/test/multiverse/suites/typhoeus/Envfile +0 -19
- data/test/multiverse/suites/typhoeus/typhoeus_test.rb +3 -3
- data/test/multiverse/suites/yajl/Envfile +5 -0
- data/test/multiverse/suites/yajl/yajl_test.rb +1 -3
- data/test/new_relic/agent/agent/start_test.rb +3 -3
- data/test/new_relic/agent/agent_logger_test.rb +2 -2
- data/test/new_relic/agent/agent_test.rb +2 -2
- data/test/new_relic/agent/attribute_processing_test.rb +3 -4
- data/test/new_relic/agent/audit_logger_test.rb +4 -6
- data/test/new_relic/agent/aws_info_test.rb +17 -1
- data/test/new_relic/agent/busy_calculator_test.rb +14 -16
- data/test/new_relic/agent/configuration/manager_test.rb +1 -7
- data/test/new_relic/agent/cross_app_monitor_test.rb +1 -1
- data/test/new_relic/agent/database_test.rb +2 -10
- data/test/new_relic/agent/datastores/mongo/event_formatter_test.rb +90 -93
- data/test/new_relic/agent/datastores/redis_test.rb +14 -16
- data/test/new_relic/agent/encoding_normalizer_test.rb +38 -40
- data/test/new_relic/agent/error_collector_test.rb +16 -49
- data/test/new_relic/agent/instrumentation/active_record_helper_test.rb +0 -6
- data/test/new_relic/agent/instrumentation/active_record_subscriber_test.rb +1 -1
- data/test/new_relic/agent/instrumentation/mongodb_command_subscriber_test.rb +101 -103
- data/test/new_relic/agent/instrumentation/rack_test.rb +11 -14
- data/test/new_relic/agent/instrumentation/task_instrumentation_test.rb +0 -10
- data/test/new_relic/agent/javascript_instrumentor_test.rb +2 -2
- data/test/new_relic/agent/method_tracer/class_methods/add_method_tracer_test.rb +0 -10
- data/test/new_relic/agent/method_tracer_test.rb +35 -76
- data/test/new_relic/agent/new_relic_service_test.rb +86 -102
- data/test/new_relic/agent/pipe_channel_manager_test.rb +4 -9
- data/test/new_relic/agent/pipe_service_test.rb +2 -3
- data/test/new_relic/agent/rpm_agent_test.rb +0 -4
- data/test/new_relic/agent/sampled_buffer_test.rb +2 -2
- data/test/new_relic/agent/samplers/cpu_sampler_test.rb +28 -0
- data/test/new_relic/agent/samplers/memory_sampler_test.rb +66 -0
- data/test/new_relic/agent/sized_buffer_test.rb +1 -1
- data/test/new_relic/agent/stats_engine/gc_profiler_test.rb +2 -14
- data/test/new_relic/agent/stats_engine/metric_stats_test.rb +44 -66
- data/test/new_relic/agent/stats_test.rb +6 -8
- data/test/new_relic/agent/synthetics_event_buffer_test.rb +1 -1
- data/test/new_relic/agent/transaction/attributes_test.rb +4 -12
- data/test/new_relic/agent/transaction_test.rb +2 -10
- data/test/new_relic/agent/utilization_data_test.rb +17 -1
- data/test/new_relic/agent/vm/mri_vm_test.rb +5 -7
- data/test/new_relic/agent_test.rb +0 -43
- data/test/new_relic/coerce_test.rb +1 -3
- data/test/new_relic/fake_collector.rb +3 -3
- data/test/new_relic/fake_external_server.rb +1 -1
- data/test/new_relic/fake_server.rb +1 -1
- data/test/new_relic/http_client_test_cases.rb +3 -3
- data/test/new_relic/language_support_test.rb +6 -12
- data/test/new_relic/latest_changes_test.rb +0 -11
- data/test/new_relic/license_test.rb +3 -8
- data/test/new_relic/multiverse_helpers.rb +1 -1
- data/test/new_relic/noticed_error_test.rb +11 -7
- data/test/new_relic/rack/browser_monitoring_test.rb +1 -3
- data/test/nullverse/nullverse_helper.rb +1 -1
- data/test/performance/lib/performance.rb +1 -1
- data/test/performance/lib/performance/instrumentation/gc_stats.rb +4 -6
- data/test/performance/lib/performance/instrumentation/perf_tools.rb +1 -1
- data/test/performance/lib/performance/instrumentation/stackprof.rb +1 -1
- data/test/performance/lib/performance/platform.rb +1 -8
- data/test/performance/script/runner +1 -3
- data/test/performance/suites/active_record.rb +3 -24
- data/test/test_helper.rb +9 -216
- metadata +9 -45
- data/lib/conditional_vendored_dependency_detection.rb +0 -7
- data/lib/new_relic/agent/hash_extensions.rb +0 -41
- data/lib/new_relic/agent/instrumentation/metric_frame.rb +0 -39
- data/lib/new_relic/agent/instrumentation/rails/errors.rb +0 -51
- data/lib/new_relic/agent/instrumentation/rails3/errors.rb +0 -47
- data/lib/new_relic/agent/instrumentation/rails4/errors.rb +0 -46
- data/lib/new_relic/agent/stats_engine/samplers.rb +0 -22
- data/lib/new_relic/agent/vm/rubinius_vm.rb +0 -140
- data/lib/new_relic/json_wrapper.rb +0 -78
- data/lib/new_relic/okjson.rb +0 -602
- data/lib/new_relic/rack/error_collector.rb +0 -27
- data/lib/new_relic/timer_lib.rb +0 -31
- data/test/helpers/runtime_detection.rb +0 -17
- data/test/multiverse/suites/no_json/Envfile +0 -12
- data/test/multiverse/suites/no_json/config/newrelic.yml +0 -27
- data/test/multiverse/suites/no_json/marshal_config_test.rb +0 -22
- data/test/new_relic/agent/hash_extensions_test.rb +0 -59
- data/test/new_relic/agent/instrumentation/metric_frame_test.rb +0 -22
- data/test/new_relic/agent/stats_engine/samplers_test.rb +0 -98
- data/test/new_relic/agent/vm/rubinius_vm_test.rb +0 -69
- data/test/new_relic/json_wrapper_test.rb +0 -32
- data/test/new_relic/rack/deferred_instrumentation_test.rb +0 -33
- data/test/new_relic/rack/error_collector_test.rb +0 -83
- data/test/new_relic/version_number_test.rb +0 -101
- data/test/script/before_install/revert_rubygems.sh +0 -15
- data/test/script/before_install/update_bundler.sh +0 -12
- data/vendor/gems/dependency_detection-0.0.1.build/lib/dependency_detection/version.rb +0 -7
@@ -9,7 +9,6 @@ require File.expand_path(File.join(File.dirname(__FILE__), '..', 'sinatra', 'sin
|
|
9
9
|
require File.expand_path(File.join(File.dirname(__FILE__), '..', '..', '..', 'helpers', 'exceptions'))
|
10
10
|
|
11
11
|
class DeferredSinatraTestApp < Sinatra::Base
|
12
|
-
include NewRelic::Agent::Instrumentation::Rack
|
13
12
|
include NewRelic::TestHelpers::Exceptions
|
14
13
|
|
15
14
|
configure do
|
@@ -1,7 +1,3 @@
|
|
1
|
-
suite_condition("Rubinius problems prevent these from running") do
|
2
|
-
(!defined?(RUBY_ENGINE) || RUBY_ENGINE != "rbx")
|
3
|
-
end
|
4
|
-
|
5
1
|
boilerplate_gems = <<-SQLITE
|
6
2
|
gem 'rack'
|
7
3
|
if RUBY_PLATFORM == 'java'
|
@@ -12,17 +8,15 @@ boilerplate_gems = <<-SQLITE
|
|
12
8
|
SQLITE
|
13
9
|
|
14
10
|
# delayed_job_mongoid is currently unsupported, but check that we behave
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
RB
|
23
|
-
end
|
11
|
+
gemfile <<-RB
|
12
|
+
gem 'delayed_job', '~> 4.0.4'
|
13
|
+
gem 'delayed_job_mongoid', '~> 2.1.0'
|
14
|
+
gem 'i18n', '~> 0.6.11'
|
15
|
+
gem 'activesupport', '~> 3.2.22' if RUBY_VERSION == '2.4.0'
|
16
|
+
#{boilerplate_gems}
|
17
|
+
RB
|
24
18
|
|
25
|
-
if RUBY_VERSION
|
19
|
+
if RUBY_VERSION < '2.4.0'
|
26
20
|
gemfile <<-RB
|
27
21
|
gem 'delayed_job', '~> 4.1.0'
|
28
22
|
gem 'delayed_job_active_record', '~> 4.1.0'
|
@@ -33,7 +27,7 @@ if RUBY_VERSION >= '1.9.3' && RUBY_VERSION < '2.4.0'
|
|
33
27
|
end
|
34
28
|
|
35
29
|
# delayed_job_active_record (and older baked into delayed_job) support
|
36
|
-
if RUBY_VERSION
|
30
|
+
if RUBY_VERSION < '2.4.0'
|
37
31
|
dj4_with_active_record = <<-DJ
|
38
32
|
gem 'delayed_job', '~> 4.0.4'
|
39
33
|
gem 'delayed_job_active_record', '~> 4.0.2'
|
@@ -60,7 +54,7 @@ dj2_with_active_record3 = <<-DJ
|
|
60
54
|
#{boilerplate_gems}
|
61
55
|
DJ
|
62
56
|
|
63
|
-
if RUBY_VERSION
|
57
|
+
if RUBY_VERSION < '2.4.0'
|
64
58
|
gemfile <<-RB
|
65
59
|
gem 'activerecord', '~> 4.2.0'
|
66
60
|
gem 'i18n', '~> 0.7.0'
|
@@ -83,32 +77,25 @@ if RUBY_VERSION >= '1.9.3' && RUBY_VERSION < '2.4.0'
|
|
83
77
|
end
|
84
78
|
|
85
79
|
if RUBY_VERSION < '2.3.0'
|
86
|
-
[dj4_with_active_record, dj3_with_active_record, dj2_with_active_record3].each do |dj|
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
80
|
+
[dj4_with_active_record, dj3_with_active_record, dj2_with_active_record3].each do |dj|
|
81
|
+
gemfile <<-RB
|
82
|
+
gem 'activerecord', '~> 3.2.19'
|
83
|
+
gem 'i18n', '~> 0.6.11'
|
84
|
+
#{dj}
|
85
|
+
RB
|
92
86
|
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
87
|
+
gemfile <<-RB
|
88
|
+
gem 'activerecord', '~> 3.1.12'
|
89
|
+
gem 'i18n', '~> 0.6.11'
|
90
|
+
#{dj}
|
91
|
+
RB
|
98
92
|
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
end
|
93
|
+
gemfile <<-RB
|
94
|
+
gem 'activerecord', '~> 3.0.20'
|
95
|
+
gem 'i18n', '~> 0.5.4'
|
96
|
+
#{dj}
|
97
|
+
RB
|
98
|
+
end
|
105
99
|
end
|
106
100
|
|
107
|
-
|
108
|
-
gemfile <<-RB
|
109
|
-
gem 'activerecord', '~> 2.3.18'
|
110
|
-
gem 'delayed_job', '~> 2.0.8'
|
111
|
-
gem 'i18n', '~> 0.5.4'
|
112
|
-
#{boilerplate_gems}
|
113
|
-
RB
|
114
|
-
end
|
101
|
+
# vim: ft=ruby
|
@@ -9,9 +9,6 @@ else
|
|
9
9
|
0.10.0)
|
10
10
|
end
|
11
11
|
|
12
|
-
# Excon 0.10.0 doesn't seem to work on Rubinius 2.2.10
|
13
|
-
excon_versions.delete("0.10.0") if defined?(RUBY_ENGINE) && RUBY_ENGINE == "rbx"
|
14
|
-
|
15
12
|
excon_versions.each do |excon_version|
|
16
13
|
gemfile <<-RB
|
17
14
|
gem 'excon', '~> #{excon_version}'
|
@@ -47,7 +47,7 @@ unless ::Grape::VERSION == '0.1.5'
|
|
47
47
|
end
|
48
48
|
|
49
49
|
#version from http accept header is not supported in older versions of grape
|
50
|
-
if
|
50
|
+
if Gem::Version.new(Grape::VERSION) >= Gem::Version.new('0.16.0')
|
51
51
|
def test_version_from_accept_version_header_is_recorded_in_transaction_name
|
52
52
|
@app_class = GrapeVersioning::ApiV4
|
53
53
|
get '/fish', {}, 'HTTP_ACCEPT_VERSION' => 'v4'
|
@@ -106,7 +106,7 @@ unless ::Grape::VERSION == '0.1.5'
|
|
106
106
|
#
|
107
107
|
# defaulting with header key/empty value does not set rack.env['api.version']
|
108
108
|
#
|
109
|
-
if
|
109
|
+
if Gem::Version.new(Grape::VERSION) >= Gem::Version.new('0.5.0')
|
110
110
|
def test_default_accept_version_header_version_in_tranasaction_names
|
111
111
|
@app_class = GrapeVersioning::DefaultAcceptVersionHeaderApi
|
112
112
|
get "/fish", nil, 'HTTP_ACCEPT_VERSION' => ''
|
@@ -46,7 +46,7 @@ unless ::Grape::VERSION == '0.1.5'
|
|
46
46
|
|
47
47
|
class ApiV4 < Grape::API
|
48
48
|
#version from http accept header is not supported in older versions of grape
|
49
|
-
if
|
49
|
+
if Gem::Version.new(Grape::VERSION) >= Gem::Version.new('0.16.0')
|
50
50
|
version ['v4', 'v5'], :using => :accept_version_header
|
51
51
|
end
|
52
52
|
|
@@ -61,7 +61,7 @@ unless ::Grape::VERSION == '0.1.5'
|
|
61
61
|
|
62
62
|
class CascadingAPI < Grape::API
|
63
63
|
#version from http accept header is not supported in older versions of grape
|
64
|
-
if
|
64
|
+
if Gem::Version.new(Grape::VERSION) >= Gem::Version.new('0.16.0')
|
65
65
|
version 'v5', :using => :accept_version_header
|
66
66
|
end
|
67
67
|
|
@@ -1,21 +1,13 @@
|
|
1
1
|
after_2_0_0 = [ '~> 2.0.2' ]
|
2
2
|
before_2_4_0 = [ '< 1.8.5' ]
|
3
3
|
before_2_2_0 = [ '~> 1.7.7', '~> 1.6.8', '~> 1.5.5' ]
|
4
|
-
before_2_0_0 = [ '~> 1.4.6', '~> 1.2.4', '~> 1.1.9' ]
|
5
|
-
before_1_9_2 = [ '1.1.2' ]
|
6
4
|
|
7
5
|
json_gems = []
|
8
6
|
json_gems += after_2_0_0 if RUBY_VERSION >= '2.0.0'
|
9
7
|
json_gems += before_2_4_0 if RUBY_VERSION < '2.4.0'
|
10
8
|
json_gems += before_2_2_0 if RUBY_VERSION < '2.2.0'
|
11
|
-
json_gems += before_2_0_0 if RUBY_VERSION < '2.0.0'
|
12
|
-
json_gems += before_1_9_2 if RUBY_VERSION < '1.9.2'
|
13
9
|
|
14
|
-
if
|
15
|
-
json_gems.delete('~> 1.7.7')
|
16
|
-
end
|
17
|
-
|
18
|
-
if defined?(RUBY_ENGINE) && RUBY_ENGINE == "jruby"
|
10
|
+
if RUBY_ENGINE == "jruby"
|
19
11
|
json_gems.delete('~> 1.2.4')
|
20
12
|
json_gems.delete('~> 1.1.9')
|
21
13
|
end
|
@@ -1,15 +1,10 @@
|
|
1
|
-
|
2
|
-
dalli_versions += %w(2.7.2 2.6.4 2.2.1) if RUBY_VERSION >= "1.9.3"
|
3
|
-
|
4
|
-
dalli_versions.each do |version|
|
1
|
+
%w(1.0.5 2.7.2 2.6.4 2.2.1).each do |version|
|
5
2
|
gemfile <<-RB
|
6
3
|
gem 'dalli', '~> #{version}'
|
7
4
|
RB
|
8
5
|
end
|
9
6
|
|
10
|
-
|
11
|
-
|
12
|
-
memcache_client_versions.each do |version|
|
7
|
+
%w(1.8.5 1.5.0).each do |version|
|
13
8
|
gemfile <<-RB
|
14
9
|
gem 'memcache-client', '~> #{version}', :require => 'memcache'
|
15
10
|
# version lockdown for ZenTest that cooperates with all Rubies
|
@@ -18,22 +13,9 @@ memcache_client_versions.each do |version|
|
|
18
13
|
RB
|
19
14
|
end
|
20
15
|
|
21
|
-
|
22
|
-
if RUBY_VERSION == "1.8.7"
|
23
|
-
memcached_client_versions = ['1.4.1']
|
24
|
-
elsif RUBY_VERSION > "1.9.3"
|
25
|
-
memcached_client_versions = ['1.8.0']
|
26
|
-
else
|
27
|
-
memcached_client_versions = %w(1.8.0 1.4.1)
|
28
|
-
end
|
29
|
-
|
30
|
-
if RUBY_PLATFORM == 'java'
|
31
|
-
memcached_client_versions = []
|
32
|
-
end
|
33
|
-
|
34
|
-
memcached_client_versions.each do |version|
|
16
|
+
unless RUBY_PLATFORM == 'java'
|
35
17
|
gemfile <<-RB
|
36
|
-
gem 'memcached', '~>
|
18
|
+
gem 'memcached', '~> 1.8.0'
|
37
19
|
RB
|
38
20
|
end
|
39
21
|
|
@@ -42,7 +24,7 @@ def memcache_running?
|
|
42
24
|
require 'socket'
|
43
25
|
TCPSocket.new('localhost', 11211)
|
44
26
|
true
|
45
|
-
rescue
|
27
|
+
rescue
|
46
28
|
false
|
47
29
|
end
|
48
30
|
end
|
@@ -1,14 +1,12 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
RB
|
11
|
-
end
|
1
|
+
gemfile <<-RB
|
2
|
+
gem 'mongo', '~>2.2.0'
|
3
|
+
RB
|
4
|
+
gemfile <<-RB
|
5
|
+
gem 'mongo', '~>2.1.0'
|
6
|
+
RB
|
7
|
+
gemfile <<-RB
|
8
|
+
gem 'mongo', '~>2.0.1'
|
9
|
+
RB
|
12
10
|
|
13
11
|
gemfile <<-RB
|
14
12
|
gem 'mongo', '1.10.0'
|
@@ -1,25 +1,19 @@
|
|
1
|
-
if RUBY_VERSION >= '1.9.3' # padrino v0.12.0 dropped support for ruby 1.8.7 and requres ruby 1.9.3 or greater
|
2
1
|
gemfile <<-RB
|
3
2
|
gem 'activesupport', '~> 3'
|
4
3
|
gem 'padrino', '~> 0.13.0'
|
5
4
|
gem 'rack-test', :require => 'rack/test'
|
6
5
|
RB
|
7
|
-
end
|
8
6
|
|
9
|
-
if RUBY_VERSION > '1.8.7' # padrino-core 0.11.0 requires http_router 0.11.0 which has syntax errors in 1.8.7.
|
10
7
|
gemfile <<-RB
|
11
8
|
gem 'activesupport', '~> 3'
|
12
9
|
gem 'padrino', '~> 0.11.0'
|
13
10
|
gem 'rack-test', :require => 'rack/test'
|
14
|
-
gem 'i18n', '< 0.7' if RUBY_VERSION < '1.9.3' # i18n >= 0.7.0 only works on Ruby 1.9.3 and newer
|
15
11
|
RB
|
16
|
-
end
|
17
12
|
|
18
13
|
gemfile <<-RB
|
19
14
|
gem 'activesupport', '~> 3'
|
20
15
|
gem 'padrino', '~> 0.10.0'
|
21
16
|
gem 'rack-test', :require => 'rack/test'
|
22
|
-
gem 'i18n', '< 0.7' if RUBY_VERSION < '1.9.3' # i18n >= 0.7.0 only works on Ruby 1.9.3 and newer
|
23
17
|
RB
|
24
18
|
|
25
19
|
# vim: ft=ruby
|
@@ -7,7 +7,6 @@ if NewRelic::Agent::Instrumentation::RackHelpers.rack_version_supported?
|
|
7
7
|
require File.join(File.dirname(__FILE__), 'example_app')
|
8
8
|
require 'new_relic/rack/browser_monitoring'
|
9
9
|
require 'new_relic/rack/agent_hooks'
|
10
|
-
require 'new_relic/rack/error_collector'
|
11
10
|
|
12
11
|
class HttpResponseCodeTest < Minitest::Test
|
13
12
|
include MultiverseHelpers
|
@@ -7,7 +7,6 @@ if NewRelic::Agent::Instrumentation::RackHelpers.version_supported? && defined?
|
|
7
7
|
require File.join(File.dirname(__FILE__), 'example_app')
|
8
8
|
require 'new_relic/rack/browser_monitoring'
|
9
9
|
require 'new_relic/rack/agent_hooks'
|
10
|
-
require 'new_relic/rack/error_collector'
|
11
10
|
|
12
11
|
class RackAutoInstrumentationTest < Minitest::Test
|
13
12
|
include MultiverseHelpers
|
@@ -32,7 +31,6 @@ class RackAutoInstrumentationTest < Minitest::Test
|
|
32
31
|
end
|
33
32
|
use NewRelic::Rack::BrowserMonitoring
|
34
33
|
use NewRelic::Rack::AgentHooks
|
35
|
-
use NewRelic::Rack::ErrorCollector
|
36
34
|
run ExampleApp.new
|
37
35
|
end
|
38
36
|
end
|
@@ -62,20 +60,19 @@ class RackAutoInstrumentationTest < Minitest::Test
|
|
62
60
|
with_config(:disable_middleware_instrumentation => true) do
|
63
61
|
get '/'
|
64
62
|
end
|
63
|
+
|
65
64
|
assert_metrics_recorded_exclusive(
|
66
65
|
[
|
67
66
|
"Apdex",
|
68
67
|
"ApdexAll",
|
69
68
|
"HttpDispatcher",
|
70
69
|
"Middleware/all",
|
71
|
-
"Apdex/Middleware/Rack/NewRelic::Rack::
|
72
|
-
"Controller/Middleware/Rack/NewRelic::Rack::
|
73
|
-
"Middleware/Rack/NewRelic::Rack::ErrorCollector/call",
|
70
|
+
"Apdex/Middleware/Rack/NewRelic::Rack::AgentHooks/call",
|
71
|
+
"Controller/Middleware/Rack/NewRelic::Rack::AgentHooks/call",
|
74
72
|
"Middleware/Rack/NewRelic::Rack::BrowserMonitoring/call",
|
75
73
|
"Middleware/Rack/NewRelic::Rack::AgentHooks/call",
|
76
|
-
["Middleware/Rack/NewRelic::Rack::
|
77
|
-
["Middleware/Rack/NewRelic::Rack::BrowserMonitoring/call", "Controller/Middleware/Rack/NewRelic::Rack::
|
78
|
-
["Middleware/Rack/NewRelic::Rack::AgentHooks/call", "Controller/Middleware/Rack/NewRelic::Rack::ErrorCollector/call"],
|
74
|
+
["Middleware/Rack/NewRelic::Rack::AgentHooks/call", "Controller/Middleware/Rack/NewRelic::Rack::AgentHooks/call"],
|
75
|
+
["Middleware/Rack/NewRelic::Rack::BrowserMonitoring/call", "Controller/Middleware/Rack/NewRelic::Rack::AgentHooks/call"]
|
79
76
|
],
|
80
77
|
:ignore_filter => /^Supportability/
|
81
78
|
)
|
@@ -94,11 +91,9 @@ class RackAutoInstrumentationTest < Minitest::Test
|
|
94
91
|
"Controller/Rack/ExampleApp/call",
|
95
92
|
"Middleware/Rack/MiddlewareOne/call",
|
96
93
|
"Middleware/Rack/MiddlewareTwo/call",
|
97
|
-
"Middleware/Rack/NewRelic::Rack::ErrorCollector/call",
|
98
94
|
"Middleware/Rack/NewRelic::Rack::BrowserMonitoring/call",
|
99
95
|
"Middleware/Rack/NewRelic::Rack::AgentHooks/call",
|
100
96
|
"Nested/Controller/Rack/ExampleApp/call",
|
101
|
-
["Middleware/Rack/NewRelic::Rack::ErrorCollector/call", "Controller/Rack/ExampleApp/call"],
|
102
97
|
["Middleware/Rack/NewRelic::Rack::BrowserMonitoring/call", "Controller/Rack/ExampleApp/call"],
|
103
98
|
["Middleware/Rack/NewRelic::Rack::AgentHooks/call", "Controller/Rack/ExampleApp/call"],
|
104
99
|
["Middleware/Rack/MiddlewareOne/call", "Controller/Rack/ExampleApp/call"],
|
@@ -7,7 +7,6 @@ if NewRelic::Agent::Instrumentation::RackHelpers.rack_version_supported?
|
|
7
7
|
require File.join(File.dirname(__FILE__), 'example_app')
|
8
8
|
require 'new_relic/rack/browser_monitoring'
|
9
9
|
require 'new_relic/rack/agent_hooks'
|
10
|
-
require 'new_relic/rack/error_collector'
|
11
10
|
|
12
11
|
class RackCascadeTest < Minitest::Test
|
13
12
|
include MultiverseHelpers
|
@@ -6,7 +6,6 @@ if NewRelic::Agent::Instrumentation::RackHelpers.rack_version_supported?
|
|
6
6
|
|
7
7
|
require 'new_relic/rack/browser_monitoring'
|
8
8
|
require 'new_relic/rack/agent_hooks'
|
9
|
-
require 'new_relic/rack/error_collector'
|
10
9
|
|
11
10
|
class RackEnvMutationTest < Minitest::Test
|
12
11
|
attr_accessor :inner_app
|
@@ -7,7 +7,6 @@ if NewRelic::Agent::Instrumentation::RackHelpers.rack_version_supported?
|
|
7
7
|
require File.join(File.dirname(__FILE__), 'example_app')
|
8
8
|
require 'new_relic/rack/browser_monitoring'
|
9
9
|
require 'new_relic/rack/agent_hooks'
|
10
|
-
require 'new_relic/rack/error_collector'
|
11
10
|
|
12
11
|
class HttpResponseContentTypeTest < Minitest::Test
|
13
12
|
include MultiverseHelpers
|
@@ -6,7 +6,7 @@ if RUBY_VERSION >= '2.2.2' && RUBY_PLATFORM != 'java'
|
|
6
6
|
RB
|
7
7
|
end
|
8
8
|
|
9
|
-
if RUBY_VERSION
|
9
|
+
if RUBY_VERSION < '2.4.0'
|
10
10
|
gemfile <<-RB
|
11
11
|
gem 'rails', '~>4.2.1'
|
12
12
|
gem 'haml', :require => false
|
@@ -28,15 +28,12 @@ if RUBY_VERSION >= '1.9.3' && RUBY_VERSION < '2.4.0'
|
|
28
28
|
gem 'rails', '~>4.0.13'
|
29
29
|
gem 'haml', '4.0.2' # Getting load issues with haml 4.0.3
|
30
30
|
RB
|
31
|
-
end
|
32
31
|
|
33
|
-
if RUBY_VERSION < '2.4.0'
|
34
32
|
gemfile <<-RB
|
35
33
|
gem 'rails', '~>3.2.22.2'
|
36
34
|
gem 'i18n', '~>0.6.11'
|
37
35
|
gem 'haml', '4.0.2' # Getting load issues with haml 4.0.3
|
38
36
|
gem 'minitest_tu_shim', :require => false
|
39
|
-
gem 'rack-cache', '< 1.3' if RUBY_VERSION < '1.9.3' # rack-cache 1.3.0 only supports >= 1.9.3
|
40
37
|
RB
|
41
38
|
|
42
39
|
gemfile <<-RB
|
@@ -45,7 +42,6 @@ if RUBY_VERSION < '2.4.0'
|
|
45
42
|
gem 'sinatra', '~> 1.4.5'
|
46
43
|
gem 'haml', '4.0.2' # Getting load issues with haml 4.0.3
|
47
44
|
gem 'minitest_tu_shim', :require => false
|
48
|
-
gem 'rack-cache', '< 1.3' if RUBY_VERSION < '1.9.3' # rack-cache 1.3.0 only supports >= 1.9.3
|
49
45
|
RB
|
50
46
|
|
51
47
|
gemfile <<-RB
|
@@ -53,26 +49,12 @@ if RUBY_VERSION < '2.4.0'
|
|
53
49
|
gem 'i18n', '~>0.6.11'
|
54
50
|
gem 'haml', '4.0.2' # Getting load issues with haml 4.0.3
|
55
51
|
gem 'minitest_tu_shim', :require => false
|
56
|
-
gem 'rack-cache', '< 1.3' if RUBY_VERSION < '1.9.3' # rack-cache 1.3.0 only supports >= 1.9.3
|
57
52
|
RB
|
58
53
|
|
59
54
|
gemfile <<-RB
|
60
55
|
gem 'rails', '~>3.0.20'
|
61
56
|
gem 'haml', '4.0.2' # Getting load issues with haml 4.0.3
|
62
57
|
gem 'minitest_tu_shim', :require => false
|
63
|
-
gem 'rack-cache', '< 1.3' if RUBY_VERSION < '1.9.3' # rack-cache 1.3.0 only supports >= 1.9.3
|
64
|
-
RB
|
65
|
-
end
|
66
|
-
|
67
|
-
if RUBY_VERSION <= '1.9.3' && (!defined?(RUBY_ENGINE) || RUBY_ENGINE != 'jruby')
|
68
|
-
gemfile <<-RB
|
69
|
-
gem 'newrelic_rpm', :require => false, :path => File.expand_path('../../../../')
|
70
|
-
gem 'rails', '~> 2.3.18'
|
71
|
-
gem 'haml', '~> 3.1.0' # last haml version that supports Rails 2
|
72
|
-
gem 'minitest_tu_shim', :require => false
|
73
|
-
gem 'sqlite3'
|
74
|
-
gem 'i18n', '0.6.11'
|
75
|
-
gem 'rack-cache', '< 1.3' if RUBY_VERSION < '1.9.3' # rack-cache 1.3.0 only supports >= 1.9.3
|
76
58
|
RB
|
77
59
|
end
|
78
60
|
|