Class: NewRelic::Agent::Configuration::DefaultSource
- Inherits:
-
Object
- Object
- NewRelic::Agent::Configuration::DefaultSource
- Extended by:
- Forwardable
- Defined in:
- lib/new_relic/agent/configuration/default_source.rb
Instance Attribute Summary collapse
-
#defaults ⇒ Object
readonly
Returns the value of attribute defaults.
Class Method Summary collapse
- .agent_enabled ⇒ Object
- .api_port ⇒ Object
- .app_name ⇒ Object
- .audit_log_path ⇒ Object
- .browser_monitoring_auto_instrument ⇒ Object
- .config_path ⇒ Object
- .developer_mode ⇒ Object
- .disable_activerecord_instrumentation ⇒ Object
- .dispatcher ⇒ Object
- .framework ⇒ Object
- .marshaller ⇒ Object
- .monitor_mode ⇒ Object
- .port ⇒ Object
- .slow_sql_enabled ⇒ Object
- .slow_sql_explain_enabled ⇒ Object
- .slow_sql_explain_threshold ⇒ Object
- .slow_sql_record_sql ⇒ Object
- .slow_sql_stack_trace_threshold ⇒ Object
- .strip_exception_messages_enabled ⇒ Object
- .thread_profiler_enabled ⇒ Object
- .transaction_tracer_transaction_threshold ⇒ Object
Instance Method Summary collapse
- #default_values ⇒ Object
-
#initialize ⇒ DefaultSource
constructor
A new instance of DefaultSource.
Constructor Details
#initialize ⇒ DefaultSource
Returns a new instance of DefaultSource.
18 19 20 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 18 def initialize @defaults = default_values end |
Instance Attribute Details
#defaults ⇒ Object (readonly)
Returns the value of attribute defaults.
13 14 15 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 13 def defaults @defaults end |
Class Method Details
.agent_enabled ⇒ Object
69 70 71 72 73 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 69 def self.agent_enabled Proc.new { self[:enabled] && (self[:developer_mode] || self[:monitor_mode] || self[:monitor_daemons]) && ::NewRelic::Agent::Autostart.agent_should_start? } end |
.api_port ⇒ Object
129 130 131 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 129 def self.api_port Proc.new { self[:port] } end |
.app_name ⇒ Object
81 82 83 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 81 def self.app_name Proc.new { NewRelic::Control.instance.env } end |
.audit_log_path ⇒ Object
75 76 77 78 79 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 75 def self.audit_log_path Proc.new { File.join(self[:log_file_path], 'newrelic_audit.log') } end |
.browser_monitoring_auto_instrument ⇒ Object
97 98 99 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 97 def self.browser_monitoring_auto_instrument Proc.new { self[:'rum.enabled'] } end |
.config_path ⇒ Object
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 30 def self.config_path Proc.new { files = [] files << File.join("config","newrelic.yml") files << File.join("newrelic.yml") if ENV["HOME"] files << File.join(ENV["HOME"], ".newrelic", "newrelic.yml") files << File.join(ENV["HOME"], "newrelic.yml") end found_path = files.detect do |file| File.(file) if File.exists? file end found_path || "" } end |
.developer_mode ⇒ Object
141 142 143 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 141 def self.developer_mode Proc.new { self[:developer] } end |
.disable_activerecord_instrumentation ⇒ Object
125 126 127 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 125 def self.disable_activerecord_instrumentation Proc.new { self[:skip_ar_instrumentation] } end |
.dispatcher ⇒ Object
85 86 87 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 85 def self.dispatcher Proc.new { NewRelic::Control.instance.local_env.discovered_dispatcher } end |
.framework ⇒ Object
46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 46 def self.framework Proc.new { case when defined?(::NewRelic::TEST) then :test when defined?(::Merb) && defined?(::Merb::Plugins) then :merb when defined?(::Rails) case Rails::VERSION::MAJOR when 0..2 :rails when 3 :rails3 when 4 :rails4 else ::NewRelic::Agent.logger.error "Detected unsupported Rails version #{Rails::VERSION::STRING}" end when defined?(::Sinatra) && defined?(::Sinatra::Base) then :sinatra when defined?(::NewRelic::IA) then :external else :ruby end } end |
.marshaller ⇒ Object
89 90 91 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 89 def self.marshaller Proc.new { NewRelic::Agent::NewRelicService::JsonMarshaller.is_supported? ? 'json' : 'pruby' } end |
.monitor_mode ⇒ Object
145 146 147 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 145 def self.monitor_mode Proc.new { self[:enabled] } end |
.port ⇒ Object
133 134 135 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 133 def self.port Proc.new { self[:ssl] ? 443 : 80 } end |
.slow_sql_enabled ⇒ Object
117 118 119 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 117 def self.slow_sql_enabled Proc.new { self[:'transaction_tracer.enabled'] } end |
.slow_sql_explain_enabled ⇒ Object
105 106 107 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 105 def self.slow_sql_explain_enabled Proc.new { self[:'transaction_tracer.explain_enabled'] } end |
.slow_sql_explain_threshold ⇒ Object
109 110 111 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 109 def self.slow_sql_explain_threshold Proc.new { self[:'transaction_tracer.explain_threshold'] } end |
.slow_sql_record_sql ⇒ Object
101 102 103 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 101 def self.slow_sql_record_sql Proc.new { self[:'transaction_tracer.record_sql'] } end |
.slow_sql_stack_trace_threshold ⇒ Object
113 114 115 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 113 def self.slow_sql_stack_trace_threshold Proc.new { self[:'transaction_tracer.stack_trace_threshold'] } end |
.strip_exception_messages_enabled ⇒ Object
137 138 139 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 137 def self. Proc.new { self[:high_security] } end |
.thread_profiler_enabled ⇒ Object
93 94 95 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 93 def self.thread_profiler_enabled Proc.new { NewRelic::Agent::Threading::BacktraceService.is_supported? } end |
.transaction_tracer_transaction_threshold ⇒ Object
121 122 123 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 121 def self.transaction_tracer_transaction_threshold Proc.new { self[:apdex_t] * 4 } end |
Instance Method Details
#default_values ⇒ Object
22 23 24 25 26 27 28 |
# File 'lib/new_relic/agent/configuration/default_source.rb', line 22 def default_values result = {} ::NewRelic::Agent::Configuration::DEFAULTS.each do |key, value| result[key] = value[:default] end result end |