newrelic-rake 1.3.0 → 1.3.1
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/README.md +12 -1
- data/lib/newrelic-rake/instrument.rb +18 -5
- data/lib/newrelic-rake/version.rb +1 -1
- data/test/newrelic_rake_test.rb +7 -1
- metadata +3 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ebb5539b5edae9941c21451a4cb61b1e85c56fa5
|
4
|
+
data.tar.gz: 9435c7f6ccb5253ac9816617c7c4cbb73ede3d45
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 00c6f01a62032c5f4e6c7f2f25ead03d3df9c4014f738e26c63029229b8462499c62b22b5bc1ab5763365f78ee5b9b0eb44713d23219cc112566dc994b1dc64f
|
7
|
+
data.tar.gz: 4831d28cd4d8b69dfbf12bb06594be715945d3644352adb75caf494d68144f693829d448a0569576fd538f30033d19be14f2f2cc09c26e9bbfbc31f362dda939
|
data/CHANGELOG.md
CHANGED
data/README.md
CHANGED
@@ -18,7 +18,18 @@ Or install it yourself as:
|
|
18
18
|
|
19
19
|
## Usage
|
20
20
|
|
21
|
-
nothing
|
21
|
+
There is usually nothing to do for rake tasks in rails that depend on `:environment`,
|
22
|
+
monitoring of these should just work.
|
23
|
+
|
24
|
+
Rake files need to require `newrelic-rake` and start the newrelic agent
|
25
|
+
before executing tasks to monitor:
|
26
|
+
|
27
|
+
```
|
28
|
+
require 'newrelic-rake'
|
29
|
+
NewRelic::Agent.manual_start
|
30
|
+
```
|
31
|
+
|
32
|
+
These steps happen automatically in Rails' `:environment` task if you use `Bundler.require` in your `application.rb`.
|
22
33
|
|
23
34
|
## Authors and Contributors
|
24
35
|
|
@@ -17,12 +17,10 @@ DependencyDetection.defer do
|
|
17
17
|
|
18
18
|
alias_method :origin_execute, :execute
|
19
19
|
def execute(args=nil)
|
20
|
-
|
21
|
-
NewRelic::Agent.manual_start(:dispatcher => :rake)
|
22
|
-
NewRelic::Rake.started = true
|
23
|
-
end
|
24
|
-
perform_action_with_newrelic_trace(:name => self.name, :category => "OtherTransaction/Rake") do
|
20
|
+
if ignore_metric_reporting?
|
25
21
|
origin_execute(args)
|
22
|
+
else
|
23
|
+
execute_with_newrelic_trace(args)
|
26
24
|
end
|
27
25
|
end
|
28
26
|
|
@@ -30,6 +28,21 @@ DependencyDetection.defer do
|
|
30
28
|
# https://newrelic.com/docs/ruby/monitoring-ruby-background-processes-and-daemons
|
31
29
|
# even though Agent configuration is :send_data_on_exit => true
|
32
30
|
at_exit { NewRelic::Agent.shutdown }
|
31
|
+
|
32
|
+
def execute_with_newrelic_trace(args)
|
33
|
+
unless ::NewRelic::Rake.started?
|
34
|
+
::NewRelic::Agent.manual_start(:dispatcher => :rake)
|
35
|
+
::NewRelic::Rake.started = true
|
36
|
+
end
|
37
|
+
perform_action_with_newrelic_trace(:name => self.name, :category => "OtherTransaction/Rake") do
|
38
|
+
origin_execute(args)
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
42
|
+
def ignore_metric_reporting?
|
43
|
+
self.name == 'jobs:work'
|
44
|
+
end
|
33
45
|
end
|
34
46
|
end
|
47
|
+
|
35
48
|
end
|
data/test/newrelic_rake_test.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
require 'test/unit'
|
2
2
|
require 'mocha/setup'
|
3
|
-
require 'newrelic-rake
|
3
|
+
require 'newrelic-rake'
|
4
4
|
|
5
5
|
class TestNewRelicRake < Test::Unit::TestCase
|
6
6
|
include NewRelic::Agent::Instrumentation::ControllerInstrumentation
|
@@ -19,6 +19,12 @@ class TestNewRelicRake < Test::Unit::TestCase
|
|
19
19
|
@sampler.clear_builder
|
20
20
|
end
|
21
21
|
|
22
|
+
def test_ignore_delayed_job
|
23
|
+
Rake::Task.define_task('jobs:work')
|
24
|
+
Rake::Task['jobs:work'].invoke
|
25
|
+
assert !@engine.metrics.include?('OtherTransaction/Rake/Rake::Task/jobs:work'), 'jobs:work task is in metrics'
|
26
|
+
end
|
27
|
+
|
22
28
|
def test_metrics
|
23
29
|
Rake::Task.define_task('foo')
|
24
30
|
Rake::Task['foo'].invoke
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: newrelic-rake
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.3.
|
4
|
+
version: 1.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Richard Huang
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-
|
11
|
+
date: 2013-08-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: newrelic_rpm
|
@@ -62,10 +62,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
62
62
|
version: '0'
|
63
63
|
requirements: []
|
64
64
|
rubyforge_project:
|
65
|
-
rubygems_version: 2.0.
|
65
|
+
rubygems_version: 2.0.6
|
66
66
|
signing_key:
|
67
67
|
specification_version: 4
|
68
68
|
summary: newrelic instrument for rake task.
|
69
69
|
test_files:
|
70
70
|
- test/newrelic_rake_test.rb
|
71
|
-
has_rdoc:
|