Skip to content

Commit 81143cb

Browse files
Merge pull request #31 from algrebe/stats-fixes
fixes #29, stats support for boolean and None
2 parents 6b1d646 + 09a4a78 commit 81143cb

2 files changed

Lines changed: 16 additions & 1 deletion

File tree

basescript/stats.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,12 +81,13 @@ def make_series_key(measurement, **tags):
8181
"""
8282
creates the key to make a series
8383
a series is a combination of retention policy, measurement and tags
84+
NOTE: ignores tags who's values are None
8485
"""
8586
# TODO include retention policy in the series key creation ?
8687
if len(tags) == 0:
8788
return measurement
8889

89-
tags_srtd = sorted([ '%s=%s' % (k,v) for k,v in tags.iteritems() ])
90+
tags_srtd = sorted([ '%s=%s' % (k,v) for k,v in tags.iteritems() if v is not None ])
9091
tags_str = ','.join(tags_srtd)
9192
# TODO if relying on this format later, make sure k,v do not have spaces or commas
9293

tests/test_stats.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,20 @@ def test_gen_series_key_multiple_tags(self):
8888
expected = "my_measurement,alpha_tag=xyz,beta=aaa,mytag1=abcd,mytag2=defg,num_tag=123"
8989
self.assertEqual(series_key, expected)
9090

91+
def test_gen_series_key_with_tag_value_none(self):
92+
series_key = basescript.stats.Series.make_series_key("my_measurement",
93+
mytag1="abcd", mytag2=None, mytag3="xyz",
94+
)
95+
expected = "my_measurement,mytag1=abcd,mytag3=xyz"
96+
self.assertEqual(series_key, expected)
97+
98+
def test_gen_series_key_with_tag_value_false(self):
99+
series_key = basescript.stats.Series.make_series_key("my_measurement",
100+
mytag1="abcd", mytag2=False, mytag3="xyz",
101+
)
102+
expected = "my_measurement,mytag1=abcd,mytag2=False,mytag3=xyz"
103+
self.assertEqual(series_key, expected)
104+
91105
def _test_last_accessed_times_in_non_decreasing_order(self, lats):
92106
# all the last_accessed_times must be in increasing order starting with None
93107
for i in xrange(0, len(lats) - 1):

0 commit comments

Comments
 (0)