From 954546aa8bc126def7d567392eb9a471bcdb9405 Mon Sep 17 00:00:00 2001 From: bohan-amplitude Date: Tue, 15 Nov 2022 11:51:21 -0800 Subject: [PATCH 1/2] Add a optional grace time period to shutdown method --- src/amplitude/client.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/amplitude/client.py b/src/amplitude/client.py index 2e519f2..2af1942 100644 --- a/src/amplitude/client.py +++ b/src/amplitude/client.py @@ -3,7 +3,7 @@ Classes: Amplitude: the Amplitude client class """ - +import time from typing import Optional, Union, List from amplitude.config import Config @@ -163,7 +163,9 @@ def remove(self, plugin: Plugin): self.__timeline.remove(plugin) return self - def shutdown(self): + def shutdown(self, grace_time_milliseconds=0): """Shutdown the client instance, not accepting new events, flush all events in buffer""" self.configuration.opt_out = True self.__timeline.shutdown() + if grace_time_milliseconds > 0: + time.sleep(grace_time_milliseconds / 1000) From ff149324decbd9158f949de12c3e65fd91895586 Mon Sep 17 00:00:00 2001 From: bohan-amplitude Date: Tue, 15 Nov 2022 11:55:59 -0800 Subject: [PATCH 2/2] Update test_client.py --- src/test/test_client.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/test_client.py b/src/test/test_client.py index 56ae886..028d666 100644 --- a/src/test/test_client.py +++ b/src/test/test_client.py @@ -15,7 +15,7 @@ def setUp(self) -> None: configuration=Config(flush_queue_size=10, flush_interval_millis=500)) def tearDown(self) -> None: - self.client.shutdown() + self.client.shutdown(100) def test_amplitude_client_track_success(self): post_method = MagicMock()