]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
pybind/mgr/prometheus: prefix metrics with 'ceph'; replace :: with _
authorJan Fajerski <jfajerski@suse.com>
Fri, 4 Aug 2017 08:23:11 +0000 (10:23 +0200)
committerJohn Spray <john.spray@redhat.com>
Wed, 1 Nov 2017 23:03:23 +0000 (23:03 +0000)
Both follow prometheus best practices. While : is a legal metric
character, "Exposed metrics should not contain colons, these are for
users to use when aggregating."

Signed-off-by: Jan Fajerski <jfajerski@suse.com>
(cherry picked from commit 177afcc7886aa3898d092ebd1e101697bc6539fd)

src/pybind/mgr/prometheus/module.py

index 82e6a077dab7466d48f6ec736f49c3676ec5fbb2..95d7bff32775af5a8fcfa643b05ea065754e7439 100644 (file)
@@ -76,7 +76,7 @@ class Metric(object):
 
         def promethize(path):
             ''' replace illegal metric name characters '''
-            result = path.replace('.', '_').replace('+', '_plus') 
+            result = path.replace('.', '_').replace('+', '_plus').replace('::', '_')
 
             # Hyphens usually turn into underscores, unless they are
             # trailing
@@ -85,7 +85,7 @@ class Metric(object):
             else:
                 result = result.replace("-", "_")
 
-            return result
+            return "ceph_{0}".format(result)
 
         def floatstr(value):
             ''' represent as Go-compatible float '''