8000 reset counter - initial commit - testcases success · JustinJohnsonK/client_python@51dccc0 · GitHub
[go: up one dir, main page]

8000
Skip to content

Commit 51dccc0

Browse files
Justin JohnsonJustin Johnson
authored andcommitted
reset counter - initial commit - testcases success
1 parent 147c9d1 commit 51dccc0

File tree

3 files changed

+16
-1
lines changed

3 files changed

+16
-1
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,5 @@ dist
77
.coverage
88
.tox
99
.*cache
10-
htmlcov
10+
htmlcov
11+
*venv

prometheus_client/metrics.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -290,6 +290,11 @@ def _metric_init(self) -> None:
290290
self._labelvalues, self._documentation)
291291
self._created = time.time()
292292

293+
def reset(self) -> None:
294+
"""Reset the counter and the created time."""
295+
self._value.set(value=0.0)
296+
self._created = time.time()
297+
293298
def inc(self, amount: float = 1, exemplar: Optional[Dict[str, str]] = None) -> None:
294299
"""Increment counter by the given amount."""
295300
self._raise_if_not_observable()

tests/test_core.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,15 @@ def test_increment(self):
4242
self.assertEqual(1, self.registry.get_sample_value('c_total'))
4343
self.counter.inc(7)
4444
self.assertEqual(8, self.registry.get_sample_value('c_total'))
45+
46+
def test_reset(self):
47+
self.assertEqual(0, self.registry.get_sample_value('c_total'))
48+
self.counter.inc()
49+
self.assertEqual(1, self.registry.get_sample_value('c_total'))
50+
self.counter.inc(5)
51+
self.assertEqual(6, self.registry.get_sample_value('c_total'))
52+
self.counter.reset 4DB4 ()
53+
self.assertEqual(0, self.registry.get_sample_value('c_total'))
4554

4655
def test_repr(self):
4756
self.assertEqual(repr(self.counter), "prometheus_client.metrics.Counter(c)")

0 commit comments

Comments
 (0)
0