diff options
Diffstat (limited to 'kafka/producer/kafka.py')
-rw-r--r-- | kafka/producer/kafka.py | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/kafka/producer/kafka.py b/kafka/producer/kafka.py index 61cdc8b..70c0cd0 100644 --- a/kafka/producer/kafka.py +++ b/kafka/producer/kafka.py @@ -602,3 +602,18 @@ class KafkaProducer(object): return self.config['partitioner'](serialized_key, all_partitions, available) + + def metrics(self, raw=False): + """Warning: this is an unstable interface. + It may change in future releases without warning""" + if raw: + return self._metrics.metrics + + metrics = {} + for k, v in self._metrics.metrics.items(): + if k.group not in metrics: + metrics[k.group] = {} + if k.name not in metrics[k.group]: + metrics[k.group][k.name] = {} + metrics[k.group][k.name] = v.value() + return metrics |