class ElasticAPM::Metrics::Set
def metric(kls, key, tags: nil, **args)
def metric(kls, key, tags: nil, **args) if @config.disable_metrics.any? { |p| p.match? key } return NOOP end key = key_with_tags(key, tags) return metrics[key] if metrics[key] @lock.synchronize do return metrics[key] if metrics[key] metrics[key] = if metrics.length < DISTINCT_LABEL_LIMIT kls.new(key, tags: tags, **args) else unless @label_limit_logged warn( 'The limit of %d metricsets has been reached, no new ' \ 'metricsets will be created.', DISTINCT_LABEL_LIMIT ) @label_limit_logged = true end NOOP end end end