oneapm_rpm 1.1.2 → 1.1.3

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.
Files changed (160) hide show
  1. checksums.yaml +4 -4
  2. data/lib/one_apm/agent.rb +185 -192
  3. data/lib/one_apm/agent/agent/connect.rb +17 -17
  4. data/lib/one_apm/agent/agent/container_data_manager.rb +14 -14
  5. data/lib/one_apm/agent/agent/forkable_dispatcher_functions.rb +6 -35
  6. data/lib/one_apm/agent/agent/helpers.rb +6 -17
  7. data/lib/one_apm/agent/agent/start.rb +27 -27
  8. data/lib/one_apm/agent/agent/start_worker_thread.rb +19 -51
  9. data/lib/one_apm/agent/busy_calculator.rb +8 -34
  10. data/lib/one_apm/agent/cross_app/cross_app_monitor.rb +10 -10
  11. data/lib/one_apm/agent/cross_app/cross_app_tracing.rb +14 -14
  12. data/lib/one_apm/agent/database.rb +8 -35
  13. data/lib/one_apm/agent/database/active_record_helper.rb +1 -1
  14. data/lib/one_apm/agent/datastores.rb +2 -109
  15. data/lib/one_apm/agent/datastores/metric_helper.rb +1 -1
  16. data/lib/one_apm/agent/datastores/mongo/metric_translator.rb +3 -3
  17. data/lib/one_apm/agent/datastores/mongo/statement_formatter.rb +2 -2
  18. data/lib/one_apm/agent/harvester.rb +3 -6
  19. data/lib/one_apm/agent/inbound_request_monitor.rb +2 -2
  20. data/lib/one_apm/agent/javascript_instrumentor.rb +28 -28
  21. data/lib/one_apm/agent/sampler.rb +1 -1
  22. data/lib/one_apm/agent/sampler_collection.rb +6 -9
  23. data/lib/one_apm/agent/samplers/cpu_sampler.rb +4 -4
  24. data/lib/one_apm/agent/samplers/delayed_job_sampler.rb +5 -5
  25. data/lib/one_apm/agent/samplers/memory_sampler.rb +5 -5
  26. data/lib/one_apm/agent/samplers/object_sampler.rb +1 -1
  27. data/lib/one_apm/agent/samplers/vm_sampler.rb +6 -6
  28. data/lib/one_apm/agent/synthetics_monitor.rb +2 -2
  29. data/lib/one_apm/agent/threading/agent_thread.rb +6 -6
  30. data/lib/one_apm/agent/threading/backtrace_service.rb +9 -9
  31. data/lib/one_apm/agent/threading/thread_profile.rb +3 -3
  32. data/lib/one_apm/collector/collector/helper.rb +10 -10
  33. data/lib/one_apm/collector/collector/http_connection.rb +14 -14
  34. data/lib/one_apm/collector/collector/server_methods.rb +12 -12
  35. data/lib/one_apm/collector/collector_service.rb +8 -8
  36. data/lib/one_apm/collector/commands/thread_profiler_session.rb +4 -4
  37. data/lib/one_apm/collector/commands/xray_session.rb +1 -1
  38. data/lib/one_apm/collector/commands/xray_session_collection.rb +10 -10
  39. data/lib/one_apm/collector/containers/agent_command_router.rb +7 -7
  40. data/lib/one_apm/collector/containers/custom_event_aggregator.rb +6 -6
  41. data/lib/one_apm/collector/containers/error_collector.rb +16 -16
  42. data/lib/one_apm/collector/containers/sql_sampler.rb +8 -11
  43. data/lib/one_apm/collector/containers/transaction_event_aggregator.rb +15 -15
  44. data/lib/one_apm/collector/containers/transaction_sampler.rb +14 -16
  45. data/lib/one_apm/{agent/pipe/pipe_service.rb → collector/forked_process_service.rb} +3 -3
  46. data/lib/one_apm/collector/stats_engine/gc_profiler.rb +3 -3
  47. data/lib/one_apm/collector/stats_engine/metric_stats.rb +4 -4
  48. data/lib/one_apm/collector/stats_engine/stats_hash.rb +2 -2
  49. data/lib/one_apm/configuration.rb +16 -16
  50. data/lib/one_apm/configuration/autostart.rb +4 -4
  51. data/lib/one_apm/configuration/default_source.rb +9 -9
  52. data/lib/one_apm/configuration/environment_source.rb +1 -1
  53. data/lib/one_apm/configuration/high_security_source.rb +1 -1
  54. data/lib/one_apm/configuration/yaml_source.rb +7 -7
  55. data/lib/one_apm/errors/noticed_error.rb +2 -2
  56. data/lib/one_apm/frameworks/external.rb +2 -0
  57. data/lib/one_apm/frameworks/rails.rb +8 -18
  58. data/lib/one_apm/frameworks/rails3.rb +1 -0
  59. data/lib/one_apm/frameworks/rails4.rb +2 -6
  60. data/lib/one_apm/frameworks/ruby.rb +7 -2
  61. data/lib/one_apm/frameworks/sinatra.rb +1 -2
  62. data/lib/one_apm/inst/3rd/active_merchant.rb +1 -1
  63. data/lib/one_apm/inst/3rd/acts_as_solr.rb +2 -2
  64. data/lib/one_apm/inst/3rd/authlogic.rb +1 -1
  65. data/lib/one_apm/inst/3rd/sunspot.rb +1 -1
  66. data/lib/one_apm/inst/background_job/active_job.rb +1 -1
  67. data/lib/one_apm/inst/background_job/delayed_job.rb +4 -4
  68. data/lib/one_apm/inst/background_job/event_machine_standalone.rb +2 -2
  69. data/lib/one_apm/inst/background_job/resque.rb +11 -11
  70. data/lib/one_apm/inst/background_job/sidekiq.rb +5 -5
  71. data/lib/one_apm/inst/dispatcher/passenger.rb +4 -4
  72. data/lib/one_apm/inst/dispatcher/puma.rb +23 -0
  73. data/lib/one_apm/inst/dispatcher/rainbows.rb +2 -2
  74. data/lib/one_apm/inst/framework/grape.rb +4 -4
  75. data/lib/one_apm/inst/framework/padrino.rb +2 -2
  76. data/lib/one_apm/inst/framework/sinatra.rb +9 -9
  77. data/lib/one_apm/inst/framework/sinatra/transaction_namer.rb +1 -1
  78. data/lib/one_apm/inst/http_clients/curb.rb +6 -6
  79. data/lib/one_apm/inst/http_clients/excon.rb +4 -4
  80. data/lib/one_apm/inst/http_clients/excon/middleware.rb +3 -3
  81. data/lib/one_apm/inst/http_clients/httpclient.rb +1 -1
  82. data/lib/one_apm/inst/http_clients/net.rb +2 -2
  83. data/lib/one_apm/inst/http_clients/typhoeus.rb +2 -2
  84. data/lib/one_apm/inst/nosql/memcache.rb +7 -7
  85. data/lib/one_apm/inst/nosql/mongo.rb +6 -6
  86. data/lib/one_apm/inst/nosql/mongo_moped.rb +2 -2
  87. data/lib/one_apm/inst/nosql/redis.rb +3 -3
  88. data/lib/one_apm/inst/orm/active_record.rb +4 -4
  89. data/lib/one_apm/inst/orm/active_record_4.rb +2 -2
  90. data/lib/one_apm/inst/orm/sequel.rb +4 -4
  91. data/lib/one_apm/inst/rack.rb +3 -3
  92. data/lib/one_apm/inst/rack/rack_builder.rb +4 -4
  93. data/lib/one_apm/inst/rails/action_controller.rb +7 -7
  94. data/lib/one_apm/inst/rails/action_web_service.rb +1 -1
  95. data/lib/one_apm/inst/rails/errors.rb +1 -1
  96. data/lib/one_apm/inst/rails3/action_controller.rb +6 -6
  97. data/lib/one_apm/inst/rails3/errors.rb +1 -1
  98. data/lib/one_apm/inst/rails4/action_controller.rb +1 -1
  99. data/lib/one_apm/inst/rails4/action_controller_subscriber.rb +4 -4
  100. data/lib/one_apm/inst/rails4/action_view.rb +2 -2
  101. data/lib/one_apm/inst/rails4/action_view_subscriber.rb +4 -4
  102. data/lib/one_apm/inst/rails4/active_record_subscriber.rb +7 -7
  103. data/lib/one_apm/inst/rails4/errors.rb +1 -1
  104. data/lib/one_apm/inst/rails_middleware.rb +2 -2
  105. data/lib/one_apm/inst/support/evented_subscriber.rb +2 -2
  106. data/lib/one_apm/inst/support/queue_time.rb +1 -1
  107. data/lib/one_apm/inst/transaction_base.rb +6 -6
  108. data/lib/one_apm/logger/agent_logger.rb +8 -8
  109. data/lib/one_apm/logger/audit_logger.rb +8 -8
  110. data/lib/one_apm/logger/memory_logger.rb +1 -1
  111. data/lib/one_apm/logger/null_logger.rb +1 -3
  112. data/lib/one_apm/manager.rb +249 -0
  113. data/lib/one_apm/metrics/metric_spec.rb +1 -1
  114. data/lib/one_apm/metrics/stats.rb +1 -1
  115. data/lib/one_apm/probe.rb +1 -1
  116. data/lib/one_apm/probe/framework_loader.rb +2 -2
  117. data/lib/one_apm/probe/instance_methods.rb +19 -19
  118. data/lib/one_apm/probe/instrumentation.rb +5 -5
  119. data/lib/one_apm/rack/browser_monitoring.rb +6 -6
  120. data/lib/one_apm/rack/middleware_hooks.rb +1 -1
  121. data/lib/one_apm/rack/middleware_tracing.rb +2 -2
  122. data/lib/one_apm/support/chained_call.rb +1 -1
  123. data/lib/one_apm/support/coerce.rb +1 -1
  124. data/lib/one_apm/support/collection_helper.rb +1 -1
  125. data/lib/one_apm/support/encoders.rb +1 -1
  126. data/lib/one_apm/support/environment_report.rb +10 -10
  127. data/lib/one_apm/{agent → support}/event/event_listener.rb +3 -3
  128. data/lib/one_apm/{agent → support}/event/event_loop.rb +8 -8
  129. data/lib/one_apm/{agent → support}/event/timer.rb +1 -1
  130. data/lib/one_apm/{agent → support}/event/worker_loop.rb +5 -19
  131. data/lib/one_apm/{agent/pipe/pipe_channel_manager.rb → support/forked_process_channel.rb} +13 -51
  132. data/lib/one_apm/support/json_marshaller.rb +6 -6
  133. data/lib/one_apm/support/json_wrapper.rb +2 -2
  134. data/lib/one_apm/support/language_support.rb +1 -1
  135. data/lib/one_apm/support/library_detection.rb +5 -5
  136. data/lib/one_apm/support/marshaller.rb +1 -1
  137. data/lib/one_apm/support/method_tracer.rb +12 -12
  138. data/lib/one_apm/support/method_tracer/helpers.rb +6 -6
  139. data/lib/one_apm/support/system_info.rb +2 -2
  140. data/lib/one_apm/support/traced_method_stack.rb +4 -4
  141. data/lib/one_apm/support/vm/monotonic_gc_profiler.rb +1 -1
  142. data/lib/one_apm/support/vm/mri_vm.rb +1 -1
  143. data/lib/one_apm/transaction.rb +3 -3
  144. data/lib/one_apm/transaction/class_methods.rb +3 -3
  145. data/lib/one_apm/transaction/instance_helpers.rb +3 -3
  146. data/lib/one_apm/transaction/sample_buffer/synthetics_sample_buffer.rb +1 -1
  147. data/lib/one_apm/transaction/sample_buffer/xray_sample_buffer.rb +5 -5
  148. data/lib/one_apm/transaction/thread_local_access.rb +2 -2
  149. data/lib/one_apm/transaction/transaction_apdex.rb +2 -2
  150. data/lib/one_apm/transaction/transaction_finish_append.rb +1 -1
  151. data/lib/one_apm/transaction/transaction_jruby_functions.rb +2 -2
  152. data/lib/one_apm/transaction/transaction_name.rb +2 -2
  153. data/lib/one_apm/transaction/transaction_sample.rb +1 -1
  154. data/lib/one_apm/transaction/transaction_sample_builder.rb +7 -7
  155. data/lib/one_apm/transaction/transaction_state.rb +1 -1
  156. data/lib/one_apm/version.rb +1 -1
  157. data/lib/sequel/extensions/oneapm_instrumentation.rb +7 -7
  158. data/oneapm.yml +6 -7
  159. metadata +10 -9
  160. data/lib/one_apm/agent/agent.rb +0 -283
@@ -26,7 +26,7 @@ module OneApm
26
26
  name = "#{verb} #{name}" unless verb.nil?
27
27
  name
28
28
  rescue => e
29
- ::OneApm::Agent.logger.debug("#{e.class} : #{e.message} - Error encountered trying to identify Sinatra transaction name")
29
+ OneApm::Manager.logger.debug("#{e.class} : #{e.message} - Error encountered trying to identify Sinatra transaction name")
30
30
  OneApm::Transaction::UNKNOWN_METRIC
31
31
  end
32
32
 
@@ -11,7 +11,7 @@ LibraryDetection.defer do
11
11
  end
12
12
 
13
13
  executes do
14
- ::OneApm::Agent.logger.info 'Installing Curb instrumentation'
14
+ OneApm::Manager.logger.info 'Installing Curb instrumentation'
15
15
  require 'one_apm/agent/cross_app/cross_app_tracing'
16
16
  require 'one_apm/support/http_clients/curb_wrappers'
17
17
  end
@@ -90,9 +90,9 @@ LibraryDetection.defer do
90
90
  include OneApm::Support::MethodTracer
91
91
 
92
92
  # Add CAT with callbacks if the request is serial
93
- def add_with_oneapm(curl) #THREAD_LOCAL_ACCESS
93
+ def add_with_oneapm(curl)
94
94
  if curl.respond_to?(:_oa_serial) && curl._oa_serial
95
- hook_pending_request(curl) if OneApm::Agent.tl_is_execution_traced?
95
+ hook_pending_request(curl) if OneApm::Manager.tl_is_execution_traced?
96
96
  end
97
97
 
98
98
  return add_without_oneapm( curl )
@@ -120,7 +120,7 @@ LibraryDetection.defer do
120
120
 
121
121
  # Instrument the specified +request+ (a Curl::Easy object) and set up cross-application
122
122
  # tracing if it's enabled.
123
- def hook_pending_request(request) #THREAD_LOCAL_ACCESS
123
+ def hook_pending_request(request)
124
124
  wrapped_request, wrapped_response = wrap_request(request)
125
125
  state = OneApm::TransactionState.tl_get
126
126
  t0 = Time.now
@@ -132,7 +132,7 @@ LibraryDetection.defer do
132
132
  request._oa_instrumented = true
133
133
  end
134
134
  rescue => err
135
- OneApm::Agent.logger.error("Untrapped exception", err)
135
+ OneApm::Manager.logger.error("Untrapped exception", err)
136
136
  end
137
137
 
138
138
 
@@ -161,7 +161,7 @@ LibraryDetection.defer do
161
161
  end
162
162
 
163
163
  # Install a callback that will finish the trace.
164
- def install_completion_callback(request, t0, segment, wrapped_request, wrapped_response) #THREAD_LOCAL_ACCESS
164
+ def install_completion_callback(request, t0, segment, wrapped_request, wrapped_response)
165
165
  original_callback = request.on_complete
166
166
  request._oa_original_on_complete = original_callback
167
167
  request.on_complete do |finished_request|
@@ -35,7 +35,7 @@ LibraryDetection.defer do
35
35
  if excon_version >= EXCON_MINIMUM_VERSION
36
36
  install_excon_instrumentation(excon_version)
37
37
  else
38
- ::OneApm::Agent.logger.warn("Excon instrumentation requires at least version #{EXCON_MINIMUM_VERSION}")
38
+ OneApm::Manager.logger.warn("Excon instrumentation requires at least version #{EXCON_MINIMUM_VERSION}")
39
39
  end
40
40
  end
41
41
 
@@ -51,19 +51,19 @@ LibraryDetection.defer do
51
51
  end
52
52
 
53
53
  def install_middleware_excon_instrumentation
54
- ::OneApm::Agent.logger.info 'Installing middleware-based Excon instrumentation'
54
+ OneApm::Manager.logger.info 'Installing middleware-based Excon instrumentation'
55
55
  require 'one_apm/inst/http_clients/excon/middleware'
56
56
  defaults = Excon.defaults
57
57
 
58
58
  if defaults[:middlewares]
59
59
  defaults[:middlewares] << ::Excon::Middleware::OneApmCrossAppTracing
60
60
  else
61
- ::OneApm::Agent.logger.warn("Did not find :middlewares key in Excon.defaults, skipping Excon instrumentation")
61
+ OneApm::Manager.logger.warn("Did not find :middlewares key in Excon.defaults, skipping Excon instrumentation")
62
62
  end
63
63
  end
64
64
 
65
65
  def install_legacy_excon_instrumentation
66
- ::OneApm::Agent.logger.info 'Installing legacy Excon instrumentation'
66
+ OneApm::Manager.logger.info 'Installing legacy Excon instrumentation'
67
67
  require 'one_apm/inst/http_clients/excon/connection'
68
68
  ::Excon::Connection.install_oneapm_instrumentation
69
69
  end
@@ -9,7 +9,7 @@ module ::Excon
9
9
  @stack = stack
10
10
  end
11
11
 
12
- def request_call(datum) #THREAD_LOCAL_ACCESS
12
+ def request_call(datum)
13
13
  begin
14
14
  # Only instrument this request if we haven't already done so, because
15
15
  # we can get request_call multiple times for requests marked as
@@ -23,7 +23,7 @@ module ::Excon
23
23
  datum[:connection].instance_variable_set(TRACE_DATA_IVAR, [t0, segment, wrapped_request])
24
24
  end
25
25
  rescue => e
26
- OneApm::Agent.logger.debug(e)
26
+ OneApm::Manager.logger.debug(e)
27
27
  end
28
28
  @stack.request_call(datum)
29
29
  end
@@ -38,7 +38,7 @@ module ::Excon
38
38
  @stack.error_call(datum)
39
39
  end
40
40
 
41
- def finish_trace(datum) #THREAD_LOCAL_ACCESS
41
+ def finish_trace(datum)
42
42
  trace_data = datum[:connection] && datum[:connection].instance_variable_get(TRACE_DATA_IVAR)
43
43
  if trace_data
44
44
  datum[:connection].instance_variable_set(TRACE_DATA_IVAR, nil)
@@ -17,7 +17,7 @@ LibraryDetection.defer do
17
17
  end
18
18
 
19
19
  executes do
20
- ::OneApm::Agent.logger.info 'Installing HTTPClient instrumentation'
20
+ OneApm::Manager.logger.info 'Installing HTTPClient instrumentation'
21
21
  require 'one_apm/agent/cross_app/cross_app_tracing'
22
22
  require 'one_apm/support/http_clients/httpclient_wrappers'
23
23
  end
@@ -8,7 +8,7 @@ LibraryDetection.defer do
8
8
  end
9
9
 
10
10
  executes do
11
- ::OneApm::Agent.logger.info 'Installing Net instrumentation'
11
+ OneApm::Manager.logger.info 'Installing Net instrumentation'
12
12
  require 'one_apm/agent/cross_app/cross_app_tracing'
13
13
  require 'one_apm/support/http_clients/net_http_wrappers'
14
14
  end
@@ -21,7 +21,7 @@ LibraryDetection.defer do
21
21
  OneApm::Agent::CrossAppTracing.tl_trace_http_request( wrapped_request ) do
22
22
  # RUBY-1244 Disable further tracing in request to avoid double
23
23
  # counting if connection wasn't started (which calls request again).
24
- OneApm::Agent.disable_all_tracing do
24
+ OneApm::Manager.disable_all_tracing do
25
25
  request_without_oneapm_trace( request, *args, &block )
26
26
  end
27
27
  end
@@ -12,7 +12,7 @@ LibraryDetection.defer do
12
12
  end
13
13
 
14
14
  executes do
15
- ::OneApm::Agent.logger.info 'Installing Typhoeus instrumentation'
15
+ OneApm::Manager.logger.info 'Installing Typhoeus instrumentation'
16
16
  require 'one_apm/agent/cross_app/cross_app_tracing'
17
17
  require 'one_apm/support/http_clients/typhoeus_wrappers'
18
18
  end
@@ -71,6 +71,6 @@ module OneApm::Agent::Instrumentation::TyphoeusTracing
71
71
  request.on_complete.unshift(callback)
72
72
  end
73
73
  rescue => e
74
- OneApm::Agent.logger.error("Exception during trace setup for Typhoeus request", e)
74
+ OneApm::Manager.logger.error("Exception during trace setup for Typhoeus request", e)
75
75
  end
76
76
  end
@@ -9,7 +9,7 @@ module OneApm
9
9
  module_function
10
10
 
11
11
  def enabled?
12
- !::OneApm::Agent.config[:disable_memcache]
12
+ !OneApm::Manager.config[:disable_memcache]
13
13
  end
14
14
 
15
15
  METHODS = [:get, :get_multi, :set, :add, :incr, :decr, :delete, :replace, :append,
@@ -38,8 +38,8 @@ module OneApm
38
38
  begin
39
39
  send method_name_without, *args, &block
40
40
  ensure
41
- if OneApm::Agent.config[:capture_memcache_keys]
42
- OneApm::Agent.instance.transaction_sampler.notice_nosql(args.first.inspect, (Time.now - t0).to_f) rescue nil
41
+ if OneApm::Manager.config[:capture_memcache_keys]
42
+ OneApm::Manager.agent.transaction_sampler.notice_nosql(args.first.inspect, (Time.now - t0).to_f) rescue nil
43
43
  end
44
44
  end
45
45
  end
@@ -68,7 +68,7 @@ LibraryDetection.defer do
68
68
  end
69
69
 
70
70
  executes do
71
- ::OneApm::Agent.logger.info 'Installing Memcached instrumentation for memcache-client gem'
71
+ OneApm::Manager.logger.info 'Installing Memcached instrumentation for memcache-client gem'
72
72
  OneApm::Agent::Instrumentation::Memcache.instrument_methods(::MemCache)
73
73
  end
74
74
  end
@@ -85,7 +85,7 @@ LibraryDetection.defer do
85
85
  end
86
86
 
87
87
  executes do
88
- ::OneApm::Agent.logger.info 'Installing Memcached instrumentation for memcached gem'
88
+ OneApm::Manager.logger.info 'Installing Memcached instrumentation for memcached gem'
89
89
  ::OneApm::Agent::Instrumentation::Memcache.instrument_methods(::Memcached)
90
90
  end
91
91
  end
@@ -102,7 +102,7 @@ LibraryDetection.defer do
102
102
  end
103
103
 
104
104
  executes do
105
- ::OneApm::Agent.logger.info 'Installing Memcache instrumentation for dalli gem'
105
+ OneApm::Manager.logger.info 'Installing Memcache instrumentation for dalli gem'
106
106
  ::OneApm::Agent::Instrumentation::Memcache.instrument_methods(::Dalli::Client)
107
107
  end
108
108
  end
@@ -127,7 +127,7 @@ LibraryDetection.defer do
127
127
  :delete_cas]
128
128
 
129
129
  executes do
130
- ::OneApm::Agent.logger.info 'Installing Dalli CAS Client Memcache instrumentation'
130
+ OneApm::Manager.logger.info 'Installing Dalli CAS Client Memcache instrumentation'
131
131
  ::OneApm::Agent::Instrumentation::Memcache.instrument_methods(::Dalli::Client,
132
132
  CAS_CLIENT_METHODS)
133
133
  end
@@ -13,7 +13,7 @@ LibraryDetection.defer do
13
13
  end
14
14
 
15
15
  executes do
16
- OneApm::Agent.logger.info 'Installing Mongo instrumentation'
16
+ OneApm::Manager.logger.info 'Installing Mongo instrumentation'
17
17
  install_mongo_instrumentation
18
18
  end
19
19
 
@@ -42,10 +42,10 @@ LibraryDetection.defer do
42
42
  def one_apm_notice_statement(t0, payload, name)
43
43
  statement = OneApm::Agent::Datastores::Mongo::StatementFormatter.format(payload, name)
44
44
  if statement
45
- OneApm::Agent.instance.transaction_sampler.notice_nosql_statement(statement, (Time.now - t0).to_f)
45
+ OneApm::Manager.agent.transaction_sampler.notice_nosql_statement(statement, (Time.now - t0).to_f)
46
46
  end
47
47
  rescue => e
48
- OneApm::Agent.logger.debug("Exception during Mongo statement gathering", e)
48
+ OneApm::Manager.logger.debug("Exception during Mongo statement gathering", e)
49
49
  end
50
50
 
51
51
  def one_apm_generate_metrics(operation, payload = nil)
@@ -59,7 +59,7 @@ LibraryDetection.defer do
59
59
  trace_execution_scoped(metrics) do
60
60
  t0 = Time.now
61
61
 
62
- result = OneApm::Agent.disable_all_tracing do
62
+ result = OneApm::Manager.disable_all_tracing do
63
63
  instrument_without_one_apm_trace(name, payload, &block)
64
64
  end
65
65
 
@@ -80,7 +80,7 @@ LibraryDetection.defer do
80
80
  trace_execution_scoped(metrics) do
81
81
  t0 = Time.now
82
82
 
83
- result = OneApm::Agent.disable_all_tracing do
83
+ result = OneApm::Manager.disable_all_tracing do
84
84
  save_without_one_apm_trace(doc, opts, &block)
85
85
  end
86
86
 
@@ -101,7 +101,7 @@ LibraryDetection.defer do
101
101
  trace_execution_scoped(metrics) do
102
102
  t0 = Time.now
103
103
 
104
- result = OneApm::Agent.disable_all_tracing do
104
+ result = OneApm::Manager.disable_all_tracing do
105
105
  ensure_index_without_one_apm_trace(spec, opts, &block)
106
106
  end
107
107
 
@@ -7,11 +7,11 @@ LibraryDetection.defer do
7
7
  @name = :mongo_moped
8
8
 
9
9
  depends_on do
10
- defined?(::Moped) && !OneApm::Agent.config[:disable_mongo_moped]
10
+ defined?(::Moped) && !OneApm::Manager.config[:disable_mongo_moped]
11
11
  end
12
12
 
13
13
  executes do
14
- OneApm::Agent.logger.info 'Installing Mongo Moped instrumentation'
14
+ OneApm::Manager.logger.info 'Installing Mongo Moped instrumentation'
15
15
  end
16
16
 
17
17
  executes do
@@ -6,11 +6,11 @@ LibraryDetection.defer do
6
6
  @name = :redis
7
7
 
8
8
  depends_on do
9
- defined?(::Redis) && !OneApm::Agent.config[:disable_redis]
9
+ defined?(::Redis) && !OneApm::Manager.config[:disable_redis]
10
10
  end
11
11
 
12
12
  executes do
13
- OneApm::Agent.logger.info 'Installing Redis Instrumentation'
13
+ OneApm::Manager.logger.info 'Installing Redis Instrumentation'
14
14
  end
15
15
 
16
16
  executes do
@@ -67,7 +67,7 @@ LibraryDetection.defer do
67
67
  end
68
68
 
69
69
  def _send_to_one_apm(args, elapsed)
70
- if OneApm::Agent.config[:"transaction_tracer.record_sql"] == "obfuscated"
70
+ if OneApm::Manager.config[:"transaction_tracer.record_sql"] == "obfuscated"
71
71
  args.map! do |arg|
72
72
  if arg.empty?
73
73
  arg
@@ -32,7 +32,7 @@ module OneApm
32
32
  end
33
33
  end
34
34
 
35
- def log_with_oneapm_instrumentation(*args, &block) #THREAD_LOCAL_ACCESS
35
+ def log_with_oneapm_instrumentation(*args, &block)
36
36
  state = OneApm::TransactionState.tl_get
37
37
 
38
38
  if !state.is_execution_traced?
@@ -54,7 +54,7 @@ module OneApm
54
54
  log_without_oneapm_instrumentation(*args, &block)
55
55
  ensure
56
56
  elapsed_time = (Time.now - t0).to_f
57
- OneApm::Agent.notice_sql(sql, metric, @config, elapsed_time, state, &EXPLAINER)
57
+ OneApm::Manager.notice_sql(sql, metric, @config, elapsed_time, state, &EXPLAINER)
58
58
  end
59
59
  end
60
60
  end
@@ -80,11 +80,11 @@ LibraryDetection.defer do
80
80
  end
81
81
 
82
82
  depends_on do
83
- !OneApm::Agent.config[:disable_activerecord]
83
+ !OneApm::Manager.config[:disable_activerecord]
84
84
  end
85
85
 
86
86
  executes do
87
- ::OneApm::Agent.logger.info 'Installing ActiveRecord instrumentation'
87
+ OneApm::Manager.logger.info 'Installing ActiveRecord instrumentation'
88
88
  end
89
89
 
90
90
  executes do
@@ -13,12 +13,12 @@ LibraryDetection.defer do
13
13
  end
14
14
 
15
15
  depends_on do
16
- !OneApm::Agent.config[:disable_activerecord] &&
16
+ !OneApm::Manager.config[:disable_activerecord] &&
17
17
  !OneApm::Agent::Instrumentation::ActiveRecordSubscriber.subscribed?
18
18
  end
19
19
 
20
20
  executes do
21
- ::OneApm::Agent.logger.info 'Installing ActiveRecord 4 instrumentation'
21
+ OneApm::Manager.logger.info 'Installing ActiveRecord 4 instrumentation'
22
22
  end
23
23
 
24
24
  executes do
@@ -8,7 +8,7 @@ LibraryDetection.defer do
8
8
  end
9
9
 
10
10
  depends_on do
11
- !OneApm::Agent.config[:disable_sequel_instrumentation]
11
+ !OneApm::Manager.config[:disable_sequel_instrumentation]
12
12
  end
13
13
 
14
14
  def supported_sequel_version?
@@ -20,12 +20,12 @@ LibraryDetection.defer do
20
20
  executes do
21
21
  if supported_sequel_version?
22
22
 
23
- ::OneApm::Agent.logger.info 'Installing Sequel instrumentation'
23
+ OneApm::Manager.logger.info 'Installing Sequel instrumentation'
24
24
 
25
25
  if Sequel::Database.respond_to?(:extension)
26
26
  Sequel::Database.extension :oneapm_instrumentation
27
27
  else
28
- OneApm::Agent.logger.warn("Detected Sequel version #{Sequel::VERSION}.")
28
+ OneApm::Manager.logger.warn("Detected Sequel version #{Sequel::VERSION}.")
29
29
  end
30
30
 
31
31
  Sequel.synchronize{Sequel::DATABASES.dup}.each do |db|
@@ -36,7 +36,7 @@ LibraryDetection.defer do
36
36
 
37
37
  else
38
38
 
39
- OneApm::Agent.logger.info "Sequel instrumentation requires at least version 3.37.0."
39
+ OneApm::Manager.logger.info "Sequel instrumentation requires at least version 3.37.0."
40
40
 
41
41
  end
42
42
 
@@ -12,7 +12,7 @@ LibraryDetection.defer do
12
12
  end
13
13
 
14
14
  executes do
15
- ::OneApm::Agent.logger.info 'Installing deferred Rack instrumentation'
15
+ OneApm::Manager.logger.info 'Installing deferred Rack instrumentation'
16
16
 
17
17
  class ::Rack::Builder
18
18
  class << self
@@ -25,8 +25,8 @@ LibraryDetection.defer do
25
25
  alias_method :to_app_without_oneapm, :to_app
26
26
  alias_method :to_app, :to_app_with_oneapm_deferred_library_detection
27
27
 
28
- unless OneApm::Agent.config[:disable_rack_middleware]
29
- ::OneApm::Agent.logger.info 'Installing Rack::Builder middleware instrumentation'
28
+ unless OneApm::Manager.config[:disable_rack_middleware]
29
+ OneApm::Manager.logger.info 'Installing Rack::Builder middleware instrumentation'
30
30
  alias_method :run_without_oneapm, :run
31
31
  alias_method :run, :run_with_oneapm
32
32
 
@@ -4,7 +4,7 @@ module OneApm
4
4
  module RackBuilder
5
5
 
6
6
  def run_with_oneapm(app, *args)
7
- unless OneApm::Agent.config[:disable_rack_middleware]
7
+ unless OneApm::Manager.config[:disable_rack_middleware]
8
8
  wrapped_app = ::OneApm::Rack::MiddlewareWrapper.wrap(app, true)
9
9
  run_without_oneapm(wrapped_app, *args)
10
10
  else
@@ -13,7 +13,7 @@ module OneApm
13
13
  end
14
14
 
15
15
  def use_with_oneapm(middleware_class, *args, &blk)
16
- unless OneApm::Agent.config[:disable_rack_middleware]
16
+ unless OneApm::Manager.config[:disable_rack_middleware]
17
17
  wrapped_middleware_class = ::OneApm::Rack::MiddlewareWrapper.wrap_class(middleware_class)
18
18
  use_without_oneapm(wrapped_middleware_class, *args, &blk)
19
19
  else
@@ -24,7 +24,7 @@ module OneApm
24
24
  # defered detection to avoid something later required
25
25
  def to_app_with_oneapm_deferred_library_detection
26
26
  unless ::Rack::Builder._oa_deferred_detection_ran
27
- OneApm::Agent.logger.info "Doing deferred library-detection before Rack startup"
27
+ OneApm::Manager.logger.info "Doing deferred library-detection before Rack startup"
28
28
  LibraryDetection.detect!
29
29
  ::Rack::Builder._oa_deferred_detection_ran = true
30
30
  end
@@ -38,7 +38,7 @@ module OneApm
38
38
  def _check_for_late_instrumentation(app)
39
39
  return if @checked_for_late_instrumentation
40
40
  @checked_for_late_instrumentation = true
41
- unless ::OneApm::Agent.config[:disable_rack_middleware]
41
+ unless OneApm::Manager.config[:disable_rack_middleware]
42
42
  if ::OneApm::Rack::MiddlewareWrapper.needs_wrapping?(app)
43
43
  # TODO Fix it in the future
44
44
  end
@@ -4,13 +4,13 @@ LibraryDetection.defer do
4
4
  @name = :rails21_view
5
5
 
6
6
  depends_on do
7
- !OneApm::Agent.config[:disable_view_instrumentation] &&
7
+ !OneApm::Manager.config[:disable_view_instrumentation] &&
8
8
  defined?(ActionController) && defined?(ActionController::Base) && defined?(ActionView::PartialTemplate) && defined?(ActionView::Template) &&
9
9
  defined?(Rails::VERSION::STRING) && Rails::VERSION::STRING =~ /^2\.1\./ # Rails 2.1 &&
10
10
  end
11
11
 
12
12
  executes do
13
- ::OneApm::Agent.logger.info 'Installing Rails 2.1 View instrumentation'
13
+ OneApm::Manager.logger.info 'Installing Rails 2.1 View instrumentation'
14
14
  end
15
15
 
16
16
  executes do
@@ -31,13 +31,13 @@ LibraryDetection.defer do
31
31
  @name = :old_rails_view
32
32
 
33
33
  depends_on do
34
- !OneApm::Agent.config[:disable_view_instrumentation] &&
34
+ !OneApm::Manager.config[:disable_view_instrumentation] &&
35
35
  defined?(ActionController) && defined?(ActionController::Base) &&
36
36
  defined?(Rails::VERSION::STRING) && Rails::VERSION::STRING =~ /^(1\.|2\.0)/ # Rails 1.* - 2.0
37
37
  end
38
38
 
39
39
  executes do
40
- ::OneApm::Agent.logger.info 'Installing Rails 1.* - 2.0 View instrumentation'
40
+ OneApm::Manager.logger.info 'Installing Rails 1.* - 2.0 View instrumentation'
41
41
  end
42
42
 
43
43
  executes do
@@ -52,13 +52,13 @@ LibraryDetection.defer do
52
52
  @name = :rails23_view
53
53
 
54
54
  depends_on do
55
- !OneApm::Agent.config[:disable_view_instrumentation] &&
55
+ !OneApm::Manager.config[:disable_view_instrumentation] &&
56
56
  defined?(ActionView) && defined?(ActionView::Template) && defined?(ActionView::RenderablePartial) &&
57
57
  defined?(Rails::VERSION::STRING) && Rails::VERSION::STRING =~ /^2\.[23]/
58
58
  end
59
59
 
60
60
  executes do
61
- ::OneApm::Agent.logger.info 'Installing Rails 2.2 - 2.3 View instrumentation'
61
+ OneApm::Manager.logger.info 'Installing Rails 2.2 - 2.3 View instrumentation'
62
62
  end
63
63
 
64
64
  executes do
@@ -86,7 +86,7 @@ LibraryDetection.defer do
86
86
  end
87
87
 
88
88
  executes do
89
- ::OneApm::Agent.logger.info 'Installing Rails 2 Controller instrumentation'
89
+ OneApm::Manager.logger.info 'Installing Rails 2 Controller instrumentation'
90
90
  end
91
91
 
92
92
  executes do