newrelic_rpm 3.14.1.311 → 3.14.2.312

Sign up to get free protection for your applications and to get access to all the features.
Files changed (108) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +174 -11
  3. data/CHANGELOG +22 -0
  4. data/Rakefile +5 -0
  5. data/lib/new_relic/agent/agent.rb +22 -7
  6. data/lib/new_relic/agent/aws_info.rb +1 -1
  7. data/lib/new_relic/agent/custom_event_aggregator.rb +19 -44
  8. data/lib/new_relic/agent/error_event_aggregator.rb +11 -103
  9. data/lib/new_relic/agent/event_aggregator.rb +130 -0
  10. data/lib/new_relic/agent/event_buffer.rb +7 -0
  11. data/lib/new_relic/agent/instrumentation/middleware_tracing.rb +18 -2
  12. data/lib/new_relic/agent/instrumentation/sinatra/transaction_namer.rb +12 -4
  13. data/lib/new_relic/agent/new_relic_service.rb +6 -4
  14. data/lib/new_relic/agent/sampled_buffer.rb +9 -6
  15. data/lib/new_relic/agent/stats_engine/metric_stats.rb +1 -2
  16. data/lib/new_relic/agent/stats_engine/stats_hash.rb +2 -1
  17. data/lib/new_relic/agent/supported_versions.rb +1 -1
  18. data/lib/new_relic/agent/synthetics_event_aggregator.rb +52 -0
  19. data/lib/new_relic/agent/synthetics_event_buffer.rb +0 -2
  20. data/lib/new_relic/agent/transaction.rb +14 -7
  21. data/lib/new_relic/agent/transaction/request_attributes.rb +7 -2
  22. data/lib/new_relic/agent/transaction_error_primitive.rb +72 -0
  23. data/lib/new_relic/agent/transaction_event_aggregator.rb +33 -210
  24. data/lib/new_relic/agent/transaction_event_primitive.rb +106 -0
  25. data/lib/new_relic/agent/transaction_event_recorder.rb +48 -0
  26. data/lib/new_relic/agent/transaction_metrics.rb +9 -1
  27. data/lib/new_relic/agent/transction_event_recorder.rb +35 -0
  28. data/lib/new_relic/recipes/capistrano3.rb +1 -1
  29. data/lib/new_relic/version.rb +1 -1
  30. data/lib/tasks/versions.html.erb +13 -11
  31. data/lib/tasks/versions.postface.html +8 -0
  32. data/lib/tasks/versions.preface.html +3 -0
  33. data/lib/tasks/versions.rake +15 -5
  34. data/test/agent_helper.rb +1 -1
  35. data/test/environments/rails31/Gemfile +2 -0
  36. data/test/environments/rails32/Gemfile +2 -0
  37. data/test/environments/rails32/Rakefile +2 -1
  38. data/test/environments/rails32/config/database.yml +1 -6
  39. data/test/multiverse/suites/active_record/Envfile +1 -0
  40. data/test/multiverse/suites/agent_only/agent_attributes_test.rb +18 -0
  41. data/test/multiverse/suites/agent_only/custom_analytics_events_test.rb +21 -6
  42. data/test/multiverse/suites/agent_only/error_events_test.rb +14 -6
  43. data/test/multiverse/suites/agent_only/transaction_events_test.rb +31 -0
  44. data/test/multiverse/suites/agent_only/utilization_data_collection_test.rb +2 -0
  45. data/test/multiverse/suites/capistrano/Envfile +9 -3
  46. data/test/multiverse/suites/capistrano2/Envfile +4 -0
  47. data/test/multiverse/suites/config_file_loading/Envfile +1 -1
  48. data/test/multiverse/suites/curb/Envfile +1 -1
  49. data/test/multiverse/suites/datamapper/Envfile +3 -0
  50. data/test/multiverse/suites/deferred_instrumentation/sinatra_test.rb +7 -3
  51. data/test/multiverse/suites/grape/grape_test.rb +2 -0
  52. data/test/multiverse/suites/padrino/Envfile +4 -3
  53. data/test/multiverse/suites/padrino/config/newrelic.yml +2 -0
  54. data/test/multiverse/suites/rack/config/newrelic.yml +18 -0
  55. data/test/multiverse/suites/rack/nested_non_rack_app_test.rb +1 -1
  56. data/test/multiverse/suites/rack/puma_rack_builder_test.rb +17 -14
  57. data/test/multiverse/suites/rack/rack_auto_instrumentation_test.rb +16 -13
  58. data/test/multiverse/suites/rack/rack_unsupported_version_test.rb +1 -1
  59. data/test/multiverse/suites/rails/Envfile +5 -0
  60. data/test/multiverse/suites/rails/parameter_capture_test.rb +9 -0
  61. data/test/multiverse/suites/rake/Envfile +2 -1
  62. data/test/multiverse/suites/redis/redis_instrumentation_test.rb +1 -1
  63. data/test/multiverse/suites/sidekiq/Envfile +18 -0
  64. data/test/multiverse/suites/sidekiq/sidekiq_instrumentation_test.rb +11 -10
  65. data/test/multiverse/suites/sidekiq/test_model.rb +12 -0
  66. data/test/multiverse/suites/sinatra/ignoring_test.rb +43 -25
  67. data/test/multiverse/suites/sinatra/nested_middleware_test.rb +10 -2
  68. data/test/multiverse/suites/sinatra/sinatra_classic_test.rb +4 -0
  69. data/test/multiverse/suites/sinatra/sinatra_metric_explosion_test.rb +8 -2
  70. data/test/multiverse/suites/sinatra/sinatra_modular_test.rb +4 -0
  71. data/test/multiverse/suites/sinatra/sinatra_parameter_capture_test.rb +2 -0
  72. data/test/multiverse/suites/sinatra/sinatra_test_cases.rb +79 -10
  73. data/test/new_relic/agent/agent_test.rb +3 -3
  74. data/test/new_relic/agent/aws_info_test.rb +1 -2
  75. data/test/new_relic/agent/configuration/orphan_configuration_test.rb +2 -0
  76. data/test/new_relic/agent/custom_event_aggregator_test.rb +43 -4
  77. data/test/new_relic/agent/error_collector_test.rb +1 -1
  78. data/test/new_relic/agent/error_event_aggregator_test.rb +13 -81
  79. data/test/new_relic/agent/event_aggregator_test.rb +178 -0
  80. data/test/new_relic/agent/event_buffer_test_cases.rb +16 -0
  81. data/test/new_relic/agent/instrumentation/sinatra/transaction_namer_test.rb +7 -0
  82. data/test/new_relic/agent/new_relic_service_test.rb +7 -1
  83. data/test/new_relic/agent/pipe_channel_manager_test.rb +45 -3
  84. data/test/new_relic/agent/rpm_agent_test.rb +1 -0
  85. data/test/new_relic/agent/stats_engine/stats_hash_test.rb +2 -2
  86. data/test/new_relic/agent/synthetics_event_aggregator_test.rb +179 -0
  87. data/test/new_relic/agent/transaction/request_attributes_test.rb +8 -0
  88. data/test/new_relic/agent/transaction_error_primitive_test.rb +117 -0
  89. data/test/new_relic/agent/transaction_event_aggregator_test.rb +148 -374
  90. data/test/new_relic/agent/transaction_event_primitive_test.rb +195 -0
  91. data/test/new_relic/agent/transaction_event_recorder_test.rb +80 -0
  92. data/test/new_relic/agent/transaction_metrics_test.rb +7 -7
  93. data/test/new_relic/agent/transaction_test.rb +4 -4
  94. data/test/new_relic/agent/utilization_data_test.rb +7 -7
  95. data/test/new_relic/fake_collector.rb +10 -17
  96. data/test/new_relic/license_test.rb +2 -0
  97. data/test/new_relic/marshalling_test_cases.rb +1 -1
  98. data/test/nullverse/default_source_require_test.rb +21 -0
  99. data/test/nullverse/nullverse_helper.rb +10 -0
  100. data/test/performance/suites/active_record.rb +1 -1
  101. data/test/performance/suites/sql_obfuscation.rb +7 -6
  102. data/test/script/ci.sh +10 -165
  103. data/test/script/install_mongodb.sh +6 -0
  104. metadata +21 -6
  105. data/test/script/build_test_gem.sh +0 -57
  106. data/test/script/ci_agent-tests_runner.sh +0 -82
  107. data/test/script/ci_bench.sh +0 -52
  108. data/test/script/ci_multiverse_runner.sh +0 -63
@@ -1,82 +0,0 @@
1
- #!/bin/bash -e
2
-
3
- SCRATH_DIR=./agent-tests_tmp
4
- #git pull git@github.com:newrelic/ruby_agent-tests.git
5
-
6
- #echo $PWD
7
- script_dirname=`dirname $0`
8
- #echo $script_dirname
9
- #echo $0
10
-
11
- # make sure that we're in the project root
12
- script_dirname=`dirname $0`
13
- cd "$script_dirname/../../"
14
-
15
-
16
-
17
- if [ -x $SCRATH_DIR ] ; then
18
- echo "found tmp, deleting"
19
- rm -fr $SCRATH_DIR
20
- fi
21
-
22
- mkdir $SCRATH_DIR
23
- cd $SCRATH_DIR
24
-
25
- git clone --depth=1 git@github.com:newrelic/ruby_agent-tests.git ruby_agent-tests
26
- git clone --depth=1 git@github.com:newrelic/rpm_contrib.git rpm_contrib
27
-
28
- if [ -x ../../Ruby_Agent ] ; then
29
- ln -s ../../Ruby_Agent ./ruby_agent
30
- else
31
- echo "*********** Ruby_Agent can't be found ***********"
32
- exit 1
33
- fi
34
-
35
- #exit 0
36
-
37
- cd ruby_agent-tests
38
- ./ci_run.sh
39
-
40
- #echo "creating tmp dir"
41
- #mkdir tmp
42
- #echo "cd'ing to tmp"
43
- # cd tmp
44
- # echo $PWD
45
-
46
-
47
- # exit 0
48
- #env
49
- #ls -al /home/hudson/.rvm/bin
50
- # source ~/.rvm/scripts/rvm
51
- #rvm 1.9.2
52
- #ruby -v
53
-
54
- # rvm --force gemset delete ruby_agent-tests
55
-
56
- # rvm gemset create ruby_agent-tests
57
-
58
- # rvm gemset use ruby_agent-tests
59
- # gem install bundler
60
- # bundle update
61
- # bundle
62
-
63
- ##
64
- # bundle exec ruby fake_collector.rb
65
- # bundle exec ruby sinatra_metric_explosion_test.rb
66
-
67
- ########
68
- # clear out gemset for next test set
69
- #
70
-
71
- # cd rails3viewfedex
72
- # rvm --force gemset delete ruby_agent-tests
73
-
74
- # rvm gemset create ruby_agent-tests
75
-
76
- # rvm gemset use ruby_agent-tests
77
-
78
- # gem install bundler
79
- # bundle update
80
- # bundle
81
- # bundle exec ruby view_instrumentation_test.rb
82
- #exit 0
@@ -1,52 +0,0 @@
1
- #!/bin/bash
2
-
3
- # Script to benchmark the ruby agent under various versions of ruby in ci.
4
-
5
- echo "Executing $0"
6
- echo "Running in $(pwd)"
7
-
8
- # print commands in this script as they're invoked
9
- # set -x
10
- # fail if any command fails
11
- set -e
12
-
13
- # check for require environment variables
14
- if [ "x$RUBY" == "x" ]; then
15
- echo '$RUBY is undefined'
16
- exit 1
17
- fi
18
-
19
-
20
- . "$HOME/.rvm/scripts/rvm"
21
- rvm use $RUBY || rvm install $RUBY
22
- echo `which ruby`
23
-
24
- # make sure that we're in the project root
25
- script_dirname=`dirname $0`
26
- cd "$script_dirname/../../"
27
- pwd
28
-
29
- rm -rf tmp
30
- mkdir -p tmp
31
- cd tmp
32
- git clone --depth=1 git@github.com:newrelic/agent_prof.git agent_prof
33
- cd agent_prof
34
-
35
- perl -p -i'.bak' -e 's#gem +.newrelic_rpm.*$#gem "newrelic_rpm", :path => "\.\.\/\.\.\/"#' Gemfile
36
-
37
- rvm --force gemset delete ruby_bench_$RUBY
38
- rvm gemset create ruby_bench_$RUBY
39
- rvm gemset use ruby_bench_$RUBY
40
-
41
- if [ "x$RUBY" == "x1.8.6" ]; then
42
- # Bundler 1.1 dropped support for ruby 1.8.6
43
- gem install bundler -v'~>1.0.0' --no-rdoc --no-ri
44
- else
45
- gem install bundler --no-rdoc --no-ri
46
- fi
47
-
48
- bundle
49
- script/run
50
- bundle exec script/post_log_to_dashboard
51
-
52
-
@@ -1,63 +0,0 @@
1
- #!/bin/bash -e
2
-
3
- export PATH=$PATH:$HOME/bin
4
-
5
- echo $HOME
6
- echo $PATH
7
- #ls $HOME/bin
8
-
9
-
10
-
11
- if [ "x$RUBY" == "x" ] ; then
12
- export RUBY=1.9.3
13
- fi
14
-
15
- echo "Tests will be run using $RUBY"
16
- #uname -a
17
-
18
- SCRATH_DIR=./multiverse_tmp
19
- script_dirname=`dirname $0`
20
-
21
- # make sure that we're in the project root
22
- cd "$script_dirname/../../"
23
-
24
- #pwd
25
-
26
- if [ -x $SCRATH_DIR ] ; then
27
- echo "found tmp, deleting"
28
- rm -fr $SCRATH_DIR
29
- fi
30
-
31
- mkdir $SCRATH_DIR
32
- cd $SCRATH_DIR
33
-
34
- #pwd
35
- if [[ $JOB_NAME =~ "Pangalactic" ]] ; then
36
- AGENT_LOCATION="../../../../../../Ruby_Agent"
37
- else
38
- AGENT_LOCATION="../../Ruby_Agent"
39
- fi
40
-
41
- git clone --depth=1 git@github.com:newrelic/multiverse.git multiverse
42
- git clone --depth=1 git@github.com:newrelic/rpm_contrib.git rpm_contrib
43
-
44
- echo "Looking for Ruby Agent at $AGENT_LOCATION"
45
- #ls -l ../../../../../../
46
- #ls -l /home/hudson/workspace/
47
-
48
- if [ -x $AGENT_LOCATION ] ; then
49
- ln -s $AGENT_LOCATION ./ruby_agent
50
- else
51
- echo "*********** Ruby_Agent not found ***********"
52
- exit 1
53
- fi
54
-
55
- cd multiverse
56
- #./ci_run.sh
57
-
58
- #pwd
59
- #ls -l ../
60
-
61
- eval "$(rbenv init -)" || true
62
- rbenv shell $RUBY
63
- script/runner