Sha256: e47745e147487c5716786d6b892bb6d117be6410e177c3f3bc920f05413cffb3
Contents?: true
Size: 1013 Bytes
Versions: 7
Compression:
Stored size: 1013 Bytes
Contents
# encoding: utf-8 # This file is distributed under New Relic's license terms. # See https://github.com/newrelic/rpm/blob/master/LICENSE for complete details. require 'new_relic/agent/stats_engine/metric_stats' require 'new_relic/agent/stats_engine/samplers' require 'new_relic/agent/stats_engine/transactions' require 'new_relic/agent/stats_engine/gc_profiler' require 'new_relic/agent/stats_engine/stats_hash' module NewRelic module Agent # This class handles all the statistics gathering for the agent class StatsEngine include MetricStats include Samplers include Transactions def initialize # Makes the unit tests happy Thread::current[:newrelic_scope_stack] = nil @stats_lock = Mutex.new @stats_hash = StatsHash.new end # All access to the @stats_hash ivar should be funnelled through this # method to ensure thread-safety. def with_stats_lock @stats_lock.synchronize { yield } end end end end
Version data entries
7 entries across 7 versions & 1 rubygems