• Aleksei Lipniagov's avatar
    Call `GC::Profiler.clear` only in one place · 1f9edb7c
    Aleksei Lipniagov authored
    Previously, both InfluxSampler and RubySampler were relying on the
    `GC::Profiler.total_time` data which is the sum over the list
    of captured GC events. Also, both samplers asynchronously called
    `GC::Profiler.clear` which led to incorrect metric data because
    each sampler has the wrong assumption it is the only object who calls
    `GC::Profiler.clear` and thus could rely on the gathered results between
    such calls.
    
    We should ensure that `GC::Profiler.total_time` is called only in one
    place making it possible to rely on accumulated data between such wipes.
    
    Also, we need to track the amount of profiler reports we lost.
    1f9edb7c
ruby_sampler.rb 3.22 KB