rpm_contrib 2.1.10 → 2.1.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/CHANGELOG CHANGED
@@ -1,3 +1,6 @@
1
+ * Version 2.1.11
2
+ - Removed Resque instrumentation in favor of instrumentation in main agent https://github.com/newrelic/rpm (version 3.4.0)
3
+
1
4
  * Version 2.1.10
2
5
  - Removed Workling instrumentation in favor of https://github.com/aurorafeint/newrelic-workling
3
6
 
data/README.md CHANGED
@@ -156,14 +156,6 @@ Our instrumentation works on the underlying 'Mongo' library.
156
156
 
157
157
  You can disable it by setting 'disable_mongodb' to true in your newrelic.yml file.
158
158
 
159
- ### Resque
160
-
161
- To instrument jobs you no longer need to have your Job class inherit from Resque::Job or include
162
- the Resque::Plugins::NewRelicInstrumentation module. The module definition was left in for
163
- backward compatibility.
164
-
165
- To disable resque, set 'disable_resque' to true in your newrelic.yml file.
166
-
167
159
  ### Redis
168
160
 
169
161
  Redis instrumentation has been removed from rpm_contrib.
metadata CHANGED
@@ -1,53 +1,69 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: rpm_contrib
3
- version: !ruby/object:Gem::Version
4
- version: 2.1.10
3
+ version: !ruby/object:Gem::Version
4
+ hash: 29
5
5
  prerelease:
6
+ segments:
7
+ - 2
8
+ - 1
9
+ - 11
10
+ version: 2.1.11
6
11
  platform: ruby
7
- authors:
12
+ authors:
8
13
  - Bill Kayser
9
14
  - Jon Guymon
10
15
  autorequire:
11
16
  bindir: bin
12
17
  cert_chain: []
13
- date: 2012-05-17 00:00:00.000000000 Z
14
- dependencies:
15
- - !ruby/object:Gem::Dependency
18
+
19
+ date: 2012-05-25 00:00:00 Z
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
16
22
  name: newrelic_rpm
17
- requirement: &70210346727380 !ruby/object:Gem::Requirement
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
18
25
  none: false
19
- requirements:
20
- - - ! '>='
21
- - !ruby/object:Gem::Version
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ hash: 1
30
+ segments:
31
+ - 3
32
+ - 1
33
+ - 1
22
34
  version: 3.1.1
23
35
  type: :runtime
24
- prerelease: false
25
- version_requirements: *70210346727380
26
- - !ruby/object:Gem::Dependency
36
+ version_requirements: *id001
37
+ - !ruby/object:Gem::Dependency
27
38
  name: newrelic_rpm
28
- requirement: &70210346726420 !ruby/object:Gem::Requirement
39
+ prerelease: false
40
+ requirement: &id002 !ruby/object:Gem::Requirement
29
41
  none: false
30
- requirements:
31
- - - ! '>='
32
- - !ruby/object:Gem::Version
42
+ requirements:
43
+ - - ">="
44
+ - !ruby/object:Gem::Version
45
+ hash: 1
46
+ segments:
47
+ - 3
48
+ - 1
49
+ - 1
33
50
  version: 3.1.1
34
51
  type: :runtime
35
- prerelease: false
36
- version_requirements: *70210346726420
37
- description: ! 'Community contributed instrumentation for various frameworks based
38
- on
39
-
52
+ version_requirements: *id002
53
+ description: |
54
+ Community contributed instrumentation for various frameworks based on
40
55
  the New Relic Ruby monitoring gem newrelic_rpm.
41
56
 
42
- '
43
57
  email: support@newrelic.com
44
58
  executables: []
59
+
45
60
  extensions: []
46
- extra_rdoc_files:
61
+
62
+ extra_rdoc_files:
47
63
  - CHANGELOG
48
64
  - LICENSE
49
65
  - README.md
50
- files:
66
+ files:
51
67
  - CHANGELOG
52
68
  - Gemfile
53
69
  - LICENSE
@@ -71,7 +87,6 @@ files:
71
87
  - lib/rpm_contrib/instrumentation/mongoid.rb
72
88
  - lib/rpm_contrib/instrumentation/paperclip.rb
73
89
  - lib/rpm_contrib/instrumentation/picky.rb
74
- - lib/rpm_contrib/instrumentation/resque.rb
75
90
  - lib/rpm_contrib/instrumentation/sinatra.rb
76
91
  - lib/rpm_contrib/instrumentation/thinking_sphinx.rb
77
92
  - lib/rpm_contrib/instrumentation/typhoeus.rb
@@ -83,35 +98,43 @@ files:
83
98
  - test/schema.rb
84
99
  - test/test_curb.rb
85
100
  - test/test_picky.rb
86
- - test/test_resque.rb
87
101
  homepage: http://github.com/newrelic/rpm_contrib
88
102
  licenses: []
103
+
89
104
  post_install_message:
90
- rdoc_options:
105
+ rdoc_options:
91
106
  - --line-numbers
92
107
  - --inline-source
93
108
  - --title
94
109
  - Contributed Instrumentation for New Relic RPM
95
110
  - -m
96
111
  - README.md
97
- require_paths:
112
+ require_paths:
98
113
  - lib
99
- required_ruby_version: !ruby/object:Gem::Requirement
114
+ required_ruby_version: !ruby/object:Gem::Requirement
100
115
  none: false
101
- requirements:
102
- - - ! '>='
103
- - !ruby/object:Gem::Version
104
- version: '0'
105
- required_rubygems_version: !ruby/object:Gem::Requirement
116
+ requirements:
117
+ - - ">="
118
+ - !ruby/object:Gem::Version
119
+ hash: 3
120
+ segments:
121
+ - 0
122
+ version: "0"
123
+ required_rubygems_version: !ruby/object:Gem::Requirement
106
124
  none: false
107
- requirements:
108
- - - ! '>='
109
- - !ruby/object:Gem::Version
110
- version: '0'
125
+ requirements:
126
+ - - ">="
127
+ - !ruby/object:Gem::Version
128
+ hash: 3
129
+ segments:
130
+ - 0
131
+ version: "0"
111
132
  requirements: []
133
+
112
134
  rubyforge_project:
113
- rubygems_version: 1.8.10
135
+ rubygems_version: 1.8.24
114
136
  signing_key:
115
137
  specification_version: 3
116
138
  summary: Contributed Instrumentation for New Relic RPM
117
139
  test_files: []
140
+
@@ -1,71 +0,0 @@
1
- require 'rpm_contrib/language_support'
2
-
3
- # call this now so it is memoized before potentially forking worker processes
4
- RPMContrib::LanguageSupport.can_fork?
5
-
6
- module Resque
7
- module Plugins
8
- module NewRelicInstrumentation
9
- include NewRelic::Agent::Instrumentation::ControllerInstrumentation
10
-
11
- def around_perform_with_monitoring(*args)
12
- begin
13
- perform_action_with_newrelic_trace(:name => 'perform',
14
- :class_name => self.name,
15
- :category => 'OtherTransaction/ResqueJob') do
16
- yield(*args)
17
- end
18
- ensure
19
- NewRelic::Agent.shutdown if RPMContrib::LanguageSupport.can_fork?
20
- end
21
- end
22
- end
23
- end
24
- end
25
-
26
- module RPMContrib
27
- module Instrumentation
28
- module ResqueInstrumentationInstaller
29
- def payload_class
30
- klass = super
31
- klass.instance_eval do
32
- extend ::Resque::Plugins::NewRelicInstrumentation
33
- end
34
- end
35
- end
36
- end
37
- end
38
-
39
- DependencyDetection.defer do
40
- @name = :resque
41
-
42
- depends_on do
43
- defined?(::Resque::Job) and not NewRelic::Control.instance['disable_resque']
44
- end
45
-
46
- executes do
47
- NewRelic::Agent.logger.debug 'Installing Resque instrumentation'
48
- end
49
-
50
- executes do
51
- # == Resque Instrumentation
52
- #
53
- # Installs a hook to ensure the agent starts manually when the worker
54
- # starts and also adds the tracer to the process method which executes
55
- # in the forked task.
56
- ::Resque::Job.class_eval do
57
- def self.new(*args)
58
- super(*args).extend RPMContrib::Instrumentation::ResqueInstrumentationInstaller
59
- end
60
- end
61
-
62
- ::Resque.before_first_fork do
63
- NewRelic::Agent.manual_start(:dispatcher => :resque,
64
- :sync_startup => true)
65
- end
66
-
67
- ::Resque.after_fork do
68
- NewRelic::Agent.after_fork(:force_reconnect => false)
69
- end
70
- end
71
- end
data/test/test_resque.rb DELETED
@@ -1,74 +0,0 @@
1
- require 'resque'
2
- require 'mocha'
3
- require File.expand_path(File.dirname(__FILE__) + "/helper")
4
- require File.expand_path(File.dirname(__FILE__) + "/../lib/rpm_contrib")
5
-
6
- class ResqueTest < Test::Unit::TestCase
7
- class ExtendoJorb < ::Resque::Job
8
- def self.perform
9
- true
10
- end
11
- end
12
-
13
- class GoodJorb
14
- def self.perform
15
- true
16
- end
17
- end
18
-
19
- class BadJorb
20
- def self.perform
21
- raise "I'm doing a bad jorb"
22
- end
23
- end
24
-
25
- def setup
26
- @worker = Resque::Worker.new(:test)
27
- NewRelic::Agent.manual_start
28
- @engine = NewRelic::Agent.instance.stats_engine
29
- end
30
-
31
- def teardown
32
- @engine.clear_stats
33
- end
34
-
35
- def test_should_instrument_job_extending_from_resque_job
36
- @worker.perform(Resque::Job.new(:test,
37
- 'class' => 'ResqueTest::ExtendoJorb'))
38
-
39
- metrics = [ 'OtherTransaction/all', 'OtherTransaction/ResqueJob/all',
40
- 'OtherTransaction/ResqueJob/ResqueTest::ExtendoJorb/perform' ]
41
- metrics.each do |metric|
42
- assert(@engine.metrics.include?(metric),
43
- "#{@engine.metrics.inspect} missing #{metric}")
44
- end
45
- assert !@engine.metrics.include?('Errors/all')
46
- end
47
-
48
- def test_should_instrument_poro_job
49
- @worker.perform(Resque::Job.new(:test, 'class' => 'ResqueTest::GoodJorb'))
50
-
51
- metrics = [ 'OtherTransaction/all', 'OtherTransaction/ResqueJob/all',
52
- 'OtherTransaction/ResqueJob/ResqueTest::GoodJorb/perform' ]
53
- metrics.each do |metric|
54
- assert(@engine.metrics.include?(metric),
55
- "#{@engine.metrics.inspect} missing #{metric}")
56
- end
57
- assert !@engine.metrics.include?('Errors/all')
58
- end
59
-
60
- def test_should_collect_job_errors
61
- begin
62
- @worker.perform(Resque::Job.new(:test, 'class' => 'ResqueTest::BadJorb'))
63
- rescue
64
- end
65
-
66
- metrics = [ 'OtherTransaction/all', 'OtherTransaction/ResqueJob/all',
67
- 'OtherTransaction/ResqueJob/ResqueTest::BadJorb/perform',
68
- 'Errors/all' ]
69
- metrics.each do |metric|
70
- assert(@engine.metrics.include?(metric),
71
- "#{@engine.metrics.inspect} missing #{metric}")
72
- end
73
- end
74
- end