Sha256: 7f64b86f8c87506b6c20c4d15860cee5189577465a3763dce5f37685768c3cf3
Contents?: true
Size: 856 Bytes
Versions: 3
Compression:
Stored size: 856 Bytes
Contents
# typed: true module Datadog module Profiling # Profiling entry point, which coordinates collectors and a scheduler class Profiler include Datadog::Core::Utils::Forking attr_reader \ :collectors, :scheduler def initialize(collectors, scheduler) @collectors = collectors @scheduler = scheduler end def start after_fork! do collectors.each(&:reset_after_fork) scheduler.reset_after_fork end collectors.each(&:start) scheduler.start end def shutdown! Datadog.logger.debug('Shutting down profiler') collectors.each do |collector| collector.enabled = false collector.stop(true) end scheduler.enabled = false scheduler.stop(true) end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
ddtrace-1.9.0 | lib/datadog/profiling/profiler.rb |
ddtrace-1.8.0 | lib/datadog/profiling/profiler.rb |
ddtrace-1.7.0 | lib/datadog/profiling/profiler.rb |