summaryrefslogtreecommitdiff
path: root/kafka/metrics/metrics.py
diff options
context:
space:
mode:
authorZack Dever <zdever@pandora.com>2016-04-11 15:19:56 -0700
committerZack Dever <zdever@pandora.com>2016-04-13 17:26:39 -0700
commit81dc89a4fd17e601f8ea1570234d3c6ccf1e0d3a (patch)
tree8399db0c4822c38ae5fba91f233cbff9747413a4 /kafka/metrics/metrics.py
parent00d1a8b5f9fb593055cfabd5f53efb1b0dcc248c (diff)
downloadkafka-python-81dc89a4fd17e601f8ea1570234d3c6ccf1e0d3a.tar.gz
trying to use locks a little less. still not ideal.
Diffstat (limited to 'kafka/metrics/metrics.py')
-rw-r--r--kafka/metrics/metrics.py11
1 files changed, 7 insertions, 4 deletions
diff --git a/kafka/metrics/metrics.py b/kafka/metrics/metrics.py
index 0920794..d02f48d 100644
--- a/kafka/metrics/metrics.py
+++ b/kafka/metrics/metrics.py
@@ -134,6 +134,10 @@ class Metrics(object):
Returns:
Sensor: The sensor that is created
"""
+ sensor = self.get_sensor(name)
+ if sensor:
+ return sensor
+
with self._lock:
sensor = self.get_sensor(name)
if not sensor:
@@ -185,10 +189,9 @@ class Metrics(object):
config (MetricConfig, optional): The configuration to use when
measuring this measurable
"""
- with self._lock:
- metric = KafkaMetric(threading.Lock(), metric_name, measurable,
- config or self.config)
- self.register_metric(metric)
+ # NOTE there was a lock here, but i don't think it's needed
+ metric = KafkaMetric(metric_name, measurable, config or self.config)
+ self.register_metric(metric)
def remove_metric(self, metric_name):
"""