From 0a33acf794837455882ab25b60013a9f33f312be Mon Sep 17 00:00:00 2001 From: Rick White Date: Sat, 15 Apr 2017 15:51:24 -0400 Subject: [PATCH] Fix `TypeError: unhashable type` when stripping off tags exceeding max --- tcollector.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tcollector.py b/tcollector.py index 0dae4fa0..7cfea864 100755 --- a/tcollector.py +++ b/tcollector.py @@ -760,7 +760,7 @@ def send_data_via_http(self): metric_entry["tags"] = dict(self.tags).copy() if len(metric_tags) + len(metric_entry["tags"]) > self.maxtags: metric_tags_orig = set(metric_tags) - subset_metric_keys = frozenset(metric_tags[:len(metric_tags[:self.maxtags-len(metric_entry["tags"])])]) + subset_metric_keys = frozenset(metric_tags.keys()[:len(metric_tags.keys()[:self.maxtags-len(metric_entry["tags"])])]) metric_tags = dict((k, v) for k, v in metric_tags.iteritems() if k in subset_metric_keys) LOG.error("Exceeding maximum permitted metric tags - removing %s for metric %s", str(metric_tags_orig - set(metric_tags)), metric)