Prometheus needs "escaped" label values

This commit is contained in:
Paul "LeoNerd" Evans 2015-03-06 18:40:20 +00:00
parent 22b37b75db
commit 0e847540c3
2 changed files with 33 additions and 29 deletions

View file

@ -35,12 +35,16 @@ class BaseMetric(object):
def is_scalar(self):
return not len(self.labels)
def _render_labelvalue(self, value):
# TODO: some kind of value escape
return '"%s"' % (value)
def _render_key(self, values):
if self.is_scalar():
return ""
# TODO: some kind of value escape
return "{%s}" % (
",".join(["%s=%s" % kv for kv in zip(self.labels, values)])
",".join(["%s=%s" % (k, self._render_labelvalue(v))
for k, v in zip(self.labels, values)])
)
def render(self):