forked from newrelic/newrelic-ruby-agent
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathinit.rb
38 lines (33 loc) · 1.7 KB
/
init.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# This is the initialization for the RPM Rails plugin
require 'new_relic/control'
# If you are having problems seeing data, be sure and check the
# newrelic_agent log files.
#
# If you can't find any log files and you don't see anything in your
# application log files, try uncommenting the two lines at the
# bottom of this file to verify the plugin is being loaded,
# then send the output to support@newrelic.com if you are unable to
# resolve the issue.
# Initializer for the NewRelic Agent
# We use this to test the agent to ensure it's not loading classes inappropriately
#require 'new_relic/agent/patch_const_missing'
#ClassLoadingWatcher.flag_const_missing = true
begin
# JRuby's glassfish plugin is trying to run the Initializer twice,
# which isn't a good thing so we ignore subsequent invocations here.
if ! defined?(::NEWRELIC_STARTED)
::NEWRELIC_STARTED = "#{caller.join("\n")}"
NewRelic::Control.instance.init_plugin(defined?(config) ? {:config => config} : {})
else
NewRelic::Control.instance.log.debug "Attempt to initialize the plugin twice!"
NewRelic::Control.instance.log.debug "Original call: \n#{::NEWRELIC_STARTED}"
NewRelic::Control.instance.log.debug "Here we are now: \n#{caller.join("\n")}"
end
rescue => e
NewRelic::Control.instance.log! "Error initializing New Relic plugin (#{e})", :error
NewRelic::Control.instance.log! e.backtrace.join("\n"), :error
NewRelic::Control.instance.log! "Agent is disabled."
end
#ClassLoadingWatcher.flag_const_missing = nil
# ::RAILS_DEFAULT_LOGGER.warn "RPM detected environment: #{NewRelic::Control.instance.local_env.to_s}, RAILS_ENV: #{RAILS_ENV}"
# ::RAILS_DEFAULT_LOGGER.warn "Enabled? #{NewRelic::Control.instance.agent_enabled?}"