Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also .

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also .
Choose a Base Repository
newrelic/rpm
Acidburn0zzz/rpm
BanzaiMan/rpm
Boostcom/rpm
Casecommons/rpm
Eviterra/rpm
Halama/rpm
Holek/rpm
JustinLove/rpm
KillerDesigner/rpm
TakatoshiMaeda/rpm
Talkdesk/rpm
acroca/rpm
adamwiggins/rpm
aigboboh/rpm
alexmchale/newrelic_rpm
alindeman/rpm
alq666/rpm
amasses/rpm
ankane/rpm
arikfr/rpm
artfuldodger/rpm
aurorafeint/rpm
banyan/rpm
barrybpdx/rpm
barttenbrinke/rpm
batchblue/rpm
bcelenza/rpm
bencao/rpm
bhenderson/rpm
bjones/rpm
blaet/newrelic_rpm
bogorman/rpm
bquorning/rpm
bray/rpm
brynary/rpm
bvandenbos/rpm
calavera/rpm
cap10morgan/rpm
caroo/rpm
casualuser/rpm
chendo/rpm
chow-dev/rpm
cicloid/rpm
cmpowell/rpm
coffeencoke/rpm
cogent/rpm
concord-consortium/rpm
cover/rpm
cowlibob/rpm
craigpg/rpm
crash2burn/rpm
crowdbase/rpm
danielnc/rpm
dashkb/rpm
davesherratt/rpm
dbussink/rpm
ddollar/rpm
deanxorr/rpm
dharamgollapudi/rpm
dinedal/rpm
diogenes/rpm
dkastner/rpm
dpoetonwheels/rpm
drbobbeaty/rpm
dresselm/rpm
econsultancy/rpm
eglabs/rpm
ejdraper/rpm
elja/rpm
emilpetkov/rpm
envato/rpm
eric/rpm
evendis/rpm
fac/rpm
fastly/rpm
federomero/rpm
fortnightlabs/rpm
forward/rpm
ftgdevs/rpm
gammons/rpm
geeksam/rpm
genki/rpm
ghazel/rpm
gnarg/rpm
graaff/rpm
halorgium/rpm
hashrocket/rpm
hghazal/rpm
hoangfb/rpm
honkster/rpm
iVirtualDev/rpm
imageoptimiser/rpm
israelb/rpm
jadeforrest/rpm
jamiepg1/rpm
jaylevitt/rpm
jdelStrother/rpm
jeremy/rpm
jhannus/rpm
jmpage/rpm
joe1chen/rpm
jsuchal/rpm
justinweiss/rpm
kbrock/rpm
kevintom/rpm
konnichiwaruby/rpm
kovyrin/rpm
kshep/rpm
langalex/rpm
liveline/rpm
lkosewsk/rpm
lloydmeta/rpm
lmarburger/rpm
loe/rpm
lparry/rpm
mattetti/wd_rpm
methodmissing/rpm
mheffner/rpm
mikelikesbikes/rpm
minom/rpm
mipearson/rpm
mislav/rpm
mmack/rpm
mnemonikk/rpm
mperham/rpm
net-engine/rpm
nicksort/rpm
ono/rpm
onyx/rpm
ordinaryzelig/rpm
paulschreiber/rpm
pedro/rpm
peppyheppy/rpm
pincsolutions/rpm
pingles/rpm
pivotalneutron/rpm
pivotalzergling/rpm
pixeltrix/rpm
pkondzior/rpm
puma/rpm
quamen/rpm
quirkey/rpm
ramonmaruko/rpm
recruitmilitary/rpm
reeplayit/rpm
regabi/rpm
reillyse/rpm
rengland-newrelic/rpm
rkh/rpm
rmf34/rpm
rthbound/rpm
ruemic/rpm
russ/rpm
sabind/rpm
salimane/rpm
samg/rpm
sauliusgrigaitis/rpm
seenmyfate/rpm
sermo/rpm
seuros/rpm
shaungordon/rpm
shopify-graveyard/rpm
shripadk/rpm
silentshade/rpm
slipstreamstudio/rpm
smulube/rpm
souvikdey/rpm
spiceworks/rpm
square/rpm
stefanpenner/rpm
stepheno/rpm
sugarwall/rpm
sylvainsf/rpm
tankerwng/rpm
tanraya/rpm
tazsingh/rpm
techarch/rpm
tehprofessor/rpm
thoran/rpm
timlinquist/rpm
tiptapinc/rpm
tjsingleton/rpm
tlossen/rpm
tmm1/rpm
tolsen/rpm
tonchidot/rpm
torquebox/rpm
troex/rpm
tupalo/rpm
unbit/rpm
unnitallman/rpm
ursm/rpm
vagmi/rpm
vladzloteanu/rpm
vmaliwal/rpm
weilu/rpm
weplay/rpm
will/rpm
wuputah/rpm
Nothing to show
Choose a base branch
2.10.2_beta
2.10.4_dev
2.10.5_dev
2.10.6_dev
2.10.7_dev
2.10.8_dev
2.11.0_beta
2.11.0_beta2
2.11.0_dev
2.11.2_dev
2.11.3_dev
2.11.4_dev
2.12.0_dev
2.12.1_dev
2.12.2_dev
2.12.3_dev
2.13.0_dev
2.13.1_dev
2.13.2_dev
2.13.4_dev
2.14.0_dev
2.14.1_dev
3.0.0_dev
3.0.1_dev
3.1.0_dev
3.1.1_dev
3.1.2_dev
3.2.0_dev
3.2.1_dev
3.3.0-with-1.9-gc-fix
3.3.0-with-manual-rum-fix
3.3.0_dev
3.3.0_with_arec_connection_rescue
3.3.1_dev
3.3.2_dev
3.3.2_with_more_granular_timestamps_in_error_messages
3.3.2.1_dev
3.4.0_dev
3.7.3.204_debug_89292
3.16.0
26992-debug
28914-debug
32926-debug
37464-debug-old
37464-debug
42054-debug
43188-debug
43544-debug
48592-debug
50710-debug
54884-debug
55624-debug
63183-debug
73139-fix
78311-debug
78886-debug
83835-debug
88910-debug
92106-debug
98508-debug
99320-debug
99684-debug
100886-debug
112789-debug
115081-debug
136921_debug
139800-debug
RUBY-848
RUBY-961
RUBY-1026
RUBY-1111-backport
RUBY-1114
RUBY-1148-test
RUBY-1158
RUBY-1180
RUBY-1184
RUBY-1187
RUBY-1254-test
RUBY-1498-mongo-multiverse
agenthooks-fix
debug-50319
debug-102844
debug-102999
debug-103103
debug-104324
debug_89292
debug_89731
dev
eqt-debug
fix_error_collector_error_filter
fork_integration
gh-pages
guard-gemspec-update
jruby-test-failures
master
memstats
mobile-header
rbx-repro
release
resque-forking-381-backport
resque-forking-396
resque_harvest_locking
samg/invalid_query_encoding_fix
samg/java-170-compatibility
samg/mocha-travis-fix
serialization_mini_fix
unit_test_with_failure
unit_tests
with-better-signal-handling
Nothing to show
...
Choose a Head Repository
newrelic/rpm
Acidburn0zzz/rpm
BanzaiMan/rpm
Boostcom/rpm
Casecommons/rpm
Eviterra/rpm
Halama/rpm
Holek/rpm
JustinLove/rpm
KillerDesigner/rpm
TakatoshiMaeda/rpm
Talkdesk/rpm
acroca/rpm
adamwiggins/rpm
aigboboh/rpm
alexmchale/newrelic_rpm
alindeman/rpm
alq666/rpm
amasses/rpm
ankane/rpm
arikfr/rpm
artfuldodger/rpm
aurorafeint/rpm
banyan/rpm
barrybpdx/rpm
barttenbrinke/rpm
batchblue/rpm
bcelenza/rpm
bencao/rpm
bhenderson/rpm
bjones/rpm
blaet/newrelic_rpm
bogorman/rpm
bquorning/rpm
bray/rpm
brynary/rpm
bvandenbos/rpm
calavera/rpm
cap10morgan/rpm
caroo/rpm
casualuser/rpm
chendo/rpm
chow-dev/rpm
cicloid/rpm
cmpowell/rpm
coffeencoke/rpm
cogent/rpm
concord-consortium/rpm
cover/rpm
cowlibob/rpm
craigpg/rpm
crash2burn/rpm
crowdbase/rpm
danielnc/rpm
dashkb/rpm
davesherratt/rpm
dbussink/rpm
ddollar/rpm
deanxorr/rpm
dharamgollapudi/rpm
dinedal/rpm
diogenes/rpm
dkastner/rpm
dpoetonwheels/rpm
drbobbeaty/rpm
dresselm/rpm
econsultancy/rpm
eglabs/rpm
ejdraper/rpm
elja/rpm
emilpetkov/rpm
envato/rpm
eric/rpm
evendis/rpm
fac/rpm
fastly/rpm
federomero/rpm
fortnightlabs/rpm
forward/rpm
ftgdevs/rpm
gammons/rpm
geeksam/rpm
genki/rpm
ghazel/rpm
gnarg/rpm
graaff/rpm
halorgium/rpm
hashrocket/rpm
hghazal/rpm
hoangfb/rpm
honkster/rpm
iVirtualDev/rpm
imageoptimiser/rpm
israelb/rpm
jadeforrest/rpm
jamiepg1/rpm
jaylevitt/rpm
jdelStrother/rpm
jeremy/rpm
jhannus/rpm
jmpage/rpm
joe1chen/rpm
jsuchal/rpm
justinweiss/rpm
kbrock/rpm
kevintom/rpm
konnichiwaruby/rpm
kovyrin/rpm
kshep/rpm
langalex/rpm
liveline/rpm
lkosewsk/rpm
lloydmeta/rpm
lmarburger/rpm
loe/rpm
lparry/rpm
mattetti/wd_rpm
methodmissing/rpm
mheffner/rpm
mikelikesbikes/rpm
minom/rpm
mipearson/rpm
mislav/rpm
mmack/rpm
mnemonikk/rpm
mperham/rpm
net-engine/rpm
nicksort/rpm
ono/rpm
onyx/rpm
ordinaryzelig/rpm
paulschreiber/rpm
pedro/rpm
peppyheppy/rpm
pincsolutions/rpm
pingles/rpm
pivotalneutron/rpm
pivotalzergling/rpm
pixeltrix/rpm
pkondzior/rpm
puma/rpm
quamen/rpm
quirkey/rpm
ramonmaruko/rpm
recruitmilitary/rpm
reeplayit/rpm
regabi/rpm
reillyse/rpm
rengland-newrelic/rpm
rkh/rpm
rmf34/rpm
rthbound/rpm
ruemic/rpm
russ/rpm
sabind/rpm
salimane/rpm
samg/rpm
sauliusgrigaitis/rpm
seenmyfate/rpm
sermo/rpm
seuros/rpm
shaungordon/rpm
shopify-graveyard/rpm
shripadk/rpm
silentshade/rpm
slipstreamstudio/rpm
smulube/rpm
souvikdey/rpm
spiceworks/rpm
square/rpm
stefanpenner/rpm
stepheno/rpm
sugarwall/rpm
sylvainsf/rpm
tankerwng/rpm
tanraya/rpm
tazsingh/rpm
techarch/rpm
tehprofessor/rpm
thoran/rpm
timlinquist/rpm
tiptapinc/rpm
tjsingleton/rpm
tlossen/rpm
tmm1/rpm
tolsen/rpm
tonchidot/rpm
torquebox/rpm
troex/rpm
tupalo/rpm
unbit/rpm
unnitallman/rpm
ursm/rpm
vagmi/rpm
vladzloteanu/rpm
vmaliwal/rpm
weilu/rpm
weplay/rpm
will/rpm
wuputah/rpm
Nothing to show
Choose a head branch
2.10.2_beta
2.10.4_dev
2.10.5_dev
2.10.6_dev
2.10.7_dev
2.10.8_dev
2.11.0_beta
2.11.0_beta2
2.11.0_dev
2.11.2_dev
2.11.3_dev
2.11.4_dev
2.12.0_dev
2.12.1_dev
2.12.2_dev
2.12.3_dev
2.13.0_dev
2.13.1_dev
2.13.2_dev
2.13.4_dev
2.14.0_dev
2.14.1_dev
3.0.0_dev
3.0.1_dev
3.1.0_dev
3.1.1_dev
3.1.2_dev
3.2.0_dev
3.2.1_dev
3.3.0-with-1.9-gc-fix
3.3.0-with-manual-rum-fix
3.3.0_dev
3.3.0_with_arec_connection_rescue
3.3.1_dev
3.3.2_dev
3.3.2_with_more_granular_timestamps_in_error_messages
3.3.2.1_dev
3.4.0_dev
3.7.3.204_debug_89292
3.16.0
26992-debug
28914-debug
32926-debug
37464-debug-old
37464-debug
42054-debug
43188-debug
43544-debug
48592-debug
50710-debug
54884-debug
55624-debug
63183-debug
73139-fix
78311-debug
78886-debug
83835-debug
88910-debug
92106-debug
98508-debug
99320-debug
99684-debug
100886-debug
112789-debug
115081-debug
136921_debug
139800-debug
RUBY-848
RUBY-961
RUBY-1026
RUBY-1111-backport
RUBY-1114
RUBY-1148-test
RUBY-1158
RUBY-1180
RUBY-1184
RUBY-1187
RUBY-1254-test
RUBY-1498-mongo-multiverse
agenthooks-fix
debug-50319
debug-102844
debug-102999
debug-103103
debug-104324
debug_89292
debug_89731
dev
eqt-debug
fix_error_collector_error_filter
fork_integration
gh-pages
guard-gemspec-update
jruby-test-failures
master
memstats
mobile-header
rbx-repro
release
resque-forking-381-backport
resque-forking-396
resque_harvest_locking
samg/invalid_query_encoding_fix
samg/java-170-compatibility
samg/mocha-travis-fix
serialization_mini_fix
unit_test_with_failure
unit_tests
with-better-signal-handling
Nothing to show
Commits on May 21, 2012
Commits on May 22, 2012
Speed up ci test setup
Conflicts:

	test/script/ci.sh
Sam Goldstein and rsaul
Sam Goldstein and rsaul
Fix worst case performace in RUM autoinstrumentation
* Only scan the first 50k of a response for the <body> tag and
  <head>/</head> tags.  This prevents us from scanning massive responses
  when there is no match to find.

* Fixed guard in tests that prevented RUM auto tests from running in
  rails 3.0 and 3.1.  It would not run if Rails::VERSION::MINOR < 3.
Sam Goldstein and rsaul
Increase tolerance for test_density test
Conflicts:

	test/new_relic/agent/worker_loop_test.rb
Commits on May 23, 2012
Commits on May 25, 2012
Commits on May 31, 2012
Commits on Jun 06, 2012
Commits on Jun 07, 2012
View
@@ -1,15 +1,17 @@
v3.4.0
* Major refactor of data transmission mechanism. This enabled child processes to send data to parent processes, which then send the data to the New Relic service. This should only affect Resque users, dramatically improving their experience.
* Moved Resque instrumentation from rpm_contrib to main agent. Resque users should discontinue use of rpm_contrib or upgrade to 2.1.11.
+ * Resolve issue with configuring the Error Collector when using server-side configuration.
v3.3.5
- * [FIX] Allow tracing of ! and ? methods
+ * [FIX] Allow tracing of methods ending in ! and ?
* [PERF] Give up after scanning first 50k of the response in RUM
auto-instrumentation.
- * [FIX] Don't raise when extracting metrics from SQL queries with non UTF-8
- * bytes. Replaced "Custom/DJ Locked Jobs" metric with three new metrics for
+ * [FIX] Don't raise when extracting metrics from SQL queries with non UTF-8 bytes.
+ * Replaced "Custom/DJ Locked Jobs" metric with new metrics for
monitoring DelayedJob: queue_length, failed_jobs, and locked_jobs, all under
- Workers/DelayedJob
+ Workers/DelayedJob. queue_length is also broken out by queue name or priority
+ depending on the version of DelayedJob deployed.
v3.3.4.1
* Bug fix when rendering empty collection in Rails 3.1+
@@ -866,7 +866,7 @@ def finish_setup(config_data)
config_transaction_tracer
log_connection!(config_data)
configure_transaction_tracer!(config_data['collect_traces'], config_data['sample_rate'])
- configure_error_collector!(config_data['collect_errors'])
+ configure_error_collector!(config_data['error_collector.enabled'])
end
# Logs when we connect to the server, for debugging purposes
@@ -1006,8 +1006,6 @@ def fill_metric_id_cache(pairs_of_specs_and_ids)
# transmission later
def harvest_and_send_timeslice_data
now = Time.now
- NewRelic::Agent.instance.stats_engine.get_stats_no_scope('Supportability/invoke_remote').record_data_point(0.0)
- NewRelic::Agent.instance.stats_engine.get_stats_no_scope('Supportability/invoke_remote/metric_data').record_data_point(0.0)
harvest_timeslice_data(now)
# In this version of the protocol, we get back an assoc array of spec to id.
metric_specs_and_ids = @service.metric_data(@last_harvest_time.to_f,
@@ -4,16 +4,20 @@
module NewRelic
module Agent
module Samplers
+ # This sampler records the status of your delayed job table once a minute.
+ # It assumes jobs are cleared after being run, and failed jobs are not (otherwise
+ # the failed job metric is useless).
+ #
+ # In earlier versions it will break out the queue length by priority. In later
+ # versions of DJ where distinct queues are supported, it breaks it out by queue name.
+ #
class DelayedJobSampler < NewRelic::Agent::Sampler
def initialize
super :delayed_job_queue
raise Unsupported, "DJ instrumentation disabled" if NewRelic::Control.instance['disable_dj']
raise Unsupported, "No DJ worker present" unless NewRelic::DelayedJobInjection.worker_name
end
- def queue_stats
- stats_engine.get_stats("Workers/DelayedJob/queue_length", false)
- end
def error_stats
stats_engine.get_stats("Workers/DelayedJob/failed_jobs", false)
end
@@ -44,12 +48,38 @@ def self.supported_on_this_platform?
end
def poll
- record queue_stats, queued_jobs
record error_stats, failed_jobs
record locked_job_stats, locked_jobs
+
+ if @queue
+ record_queue_length_across_dimension('queue')
+ else
+ record_queue_length_across_dimension('priority')
+ end
end
private
+
+ def record_queue_length_across_dimension(column)
+ all_count = 0
+ Delayed::Job.count(:group => column).each do | column_val, count |
+ all_count += count
+ record stats_engine.get_stats("Workers/DelayedJob/queue_length/#{column == 'queue' ? 'name' : column}/#{column_val}", false), count
+ end
+ record(stats_engine.get_stats("Workers/DelayedJob/queue_length/all", false), all_count)
+ end
+
+ # Figure out if we get the queues.
+ def setup
+ return unless @queue.nil?
+ @setup = true
+ columns = Delayed::Job.columns
+ columns.each do | c |
+ @queue = true if c.name.to_s == 'priority'
+ end
+ @queue ||= false
+ end
+
def record(stat, size)
stat.record_data_point size
end
View
@@ -4,7 +4,7 @@ module VERSION #:nodoc:
MAJOR = 3
MINOR = 4
TINY = 0
- BUILD = 'beta1' # Set to nil for a release, 'beta1', 'alpha', etc for prerelease builds
+ BUILD = 'beta2' # Set to nil for a release, 'beta1', 'alpha', etc for prerelease builds
STRING = [MAJOR, MINOR, TINY, BUILD].compact.join('.')
end
View
@@ -5,14 +5,14 @@
Gem::Specification.new do |s|
s.name = "newrelic_rpm"
- s.version = "3.4.0.beta1"
+ s.version = "3.4.0.beta2"
s.required_rubygems_version = Gem::Requirement.new("> 1.3.1") if s.respond_to? :required_rubygems_version=
s.authors = ["Bill Kayser", "Jon Guymon", "Justin George", "Darin Swanson"]
- s.date = "2012-05-25"
+ s.date = "2012-06-07"
s.description = "New Relic is a performance management system, developed by New Relic,\nInc (http://www.newrelic.com). New Relic provides you with deep\ninformation about the performance of your web application as it runs\nin production. The New Relic Ruby Agent is dual-purposed as a either a\nGem or plugin, hosted on\nhttp://github.com/newrelic/rpm/\n"
s.email = "support@newrelic.com"
- s.executables = ["newrelic", "mongrel_rpm", "newrelic_cmd"]
+ s.executables = ["newrelic_cmd", "newrelic", "mongrel_rpm"]
s.extra_rdoc_files = [
"CHANGELOG",
"LICENSE",
@@ -105,7 +105,6 @@ Gem::Specification.new do |s|
"lib/new_relic/control/logging_methods.rb",
"lib/new_relic/control/profiling.rb",
"lib/new_relic/control/server_methods.rb",
- "lib/new_relic/data_serialization.rb",
"lib/new_relic/delayed_job_injection.rb",
"lib/new_relic/helper.rb",
"lib/new_relic/language_support.rb",
@@ -189,7 +188,6 @@ Gem::Specification.new do |s|
"test/new_relic/control/configuration_test.rb",
"test/new_relic/control/logging_methods_test.rb",
"test/new_relic/control_test.rb",
- "test/new_relic/data_serialization_test.rb",
"test/new_relic/delayed_job_injection_test.rb",
"test/new_relic/fake_collector.rb",
"test/new_relic/fake_service.rb",
@@ -363,7 +363,7 @@ def test_finish_setup
'data_report_period' => 'pasta sauce',
'url_rules' => 'tamales',
'collect_traces' => true,
- 'collect_errors' => true,
+ 'error_collector.enabled' => true,
'sample_rate' => 10
}
NewRelic::Control.instance.settings['transaction_tracer'] = {'enabled' => true}
View
@@ -51,9 +51,10 @@ mkdir -p tmp
cd tmp
-rpm_test_app_cache=~/.rpm_test_app_cache
+#rpm_test_app_cache=~/.rpm_test_app_cache
+rpm_test_app_cache=~/workspace/.rpm_test_app_cache
(
- echo "updating local cache of rpm_test_app"
+ echo "updating local cache of rpm_test_app in $rpm_test_app_cache"
git clone --mirror git://github.com/newrelic/rpm_test_app.git $rpm_test_app_cache || true
cd $rpm_test_app_cache
)
@@ -127,7 +128,3 @@ fi
export RAILS_ENV=test
bundle
bundle exec rake --trace db:create:all ci:setup:testunit test:newrelic
-
-
-
-

No commit comments for this range