Sha256: 617ee1c31f1ff905549796457b54952224293e5d4e646196fc2c42a701072ba4
Contents?: true
Size: 1.01 KB
Versions: 5
Compression:
Stored size: 1.01 KB
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 NewRelic::Agent::TransactionState.get.clear_stats_scope_stack @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
5 entries across 5 versions & 1 rubygems