diff --git a/src/monitoring/service/EventTools.py b/src/monitoring/service/EventTools.py
index 189e78ce617c69dc4514e9e0b713dece10ef9669..c881be163cc02761be964c0914f1b0883571d0f1 100644
--- a/src/monitoring/service/EventTools.py
+++ b/src/monitoring/service/EventTools.py
@@ -15,7 +15,7 @@
 import threading
 from queue import Queue
 
-import grpc
+import grpc, logging
 
 from common.method_wrappers.ServiceExceptions import ServiceException
 from context.client.ContextClient import ContextClient
@@ -26,6 +26,8 @@ from monitoring.client.MonitoringClient import MonitoringClient
 from monitoring.service.MonitoringServiceServicerImpl import LOGGER
 from common.proto import monitoring_pb2
 
+LOGGER = logging.getLogger(__name__)
+
 class EventsDeviceCollector:
     def __init__(self) -> None: # pylint: disable=redefined-outer-name
         self._events_queue = Queue()
@@ -46,12 +48,15 @@ class EventsDeviceCollector:
             return False
 
     def _collect(self, events_stream):
+        LOGGER.warning('[_collect] begin')
         try:
             for event in events_stream:
                 self._events_queue.put_nowait(event)
         except grpc.RpcError as e:
             if e.code() != grpc.StatusCode.CANCELLED: # pylint: disable=no-member
+                LOGGER.warning('[_collect] raise')
                 raise # pragma: no cover
+        LOGGER.warning('[_collect] end')
 
     def start(self):
         try:
@@ -63,8 +68,11 @@ class EventsDeviceCollector:
         return self._events_queue.get(block=block, timeout=timeout)
 
     def stop(self):
+        LOGGER.warning('[stop] begin')
         self._device_stream.cancel()
+        LOGGER.warning('[stop] joining')
         self._device_thread.join()
+        LOGGER.warning('[stop] end')
 
     def listen_events(self):
         try:
diff --git a/src/monitoring/tests/test_unitary.py b/src/monitoring/tests/test_unitary.py
index b52e719ec27dc3f6c2ce5f412ba02f2217e5e083..4f0508ce535f57e855443c77dbfaec2334b7afad 100644
--- a/src/monitoring/tests/test_unitary.py
+++ b/src/monitoring/tests/test_unitary.py
@@ -102,6 +102,8 @@ def context_service():
     LOGGER.info('Terminating MockContextService...')
     _service.stop()
 
+    LOGGER.info('Terminated MockContextService...')
+
 @pytest.fixture(scope='session')
 def context_client(context_service : MockContextService): # pylint: disable=redefined-outer-name,unused-argument
     LOGGER.info('Initializing ContextClient...')
@@ -113,6 +115,8 @@ def context_client(context_service : MockContextService): # pylint: disable=rede
     LOGGER.info('Closing ContextClient...')
     _client.close()
 
+    LOGGER.info('Closed ContextClient...')
+
 @pytest.fixture(scope='session')
 def device_service(context_service : MockContextService): # pylint: disable=redefined-outer-name,unused-argument
     LOGGER.info('Initializing DeviceService...')
@@ -128,6 +132,8 @@ def device_service(context_service : MockContextService): # pylint: disable=rede
     LOGGER.info('Terminating DeviceService...')
     _service.stop()
 
+    LOGGER.info('Terminated DeviceService...')
+
 @pytest.fixture(scope='session')
 def device_client(device_service : DeviceService): # pylint: disable=redefined-outer-name,unused-argument
     LOGGER.info('Initializing DeviceClient...')
@@ -139,6 +145,8 @@ def device_client(device_service : DeviceService): # pylint: disable=redefined-o
     LOGGER.info('Closing DeviceClient...')
     _client.close()
 
+    LOGGER.info('Closed DeviceClient...')
+
 # This fixture will be requested by test cases and last during testing session
 @pytest.fixture(scope='session')
 def monitoring_service(
@@ -156,6 +164,8 @@ def monitoring_service(
     LOGGER.info('Terminating MonitoringService...')
     _service.stop()
 
+    LOGGER.info('Terminated MonitoringService...')
+
 # This fixture will be requested by test cases and last during testing session.
 # The client requires the server, so client fixture has the server as dependency.
 @pytest.fixture(scope='session')
@@ -170,6 +180,8 @@ def monitoring_client(monitoring_service : MonitoringService): # pylint: disable
     LOGGER.info('Closing MonitoringClient...')
     _client.close()
 
+    LOGGER.info('Closed MonitoringClient...')
+
 @pytest.fixture(scope='session')
 def management_db():
     _management_db = ManagementDBTools.ManagementDB('monitoring.db')
@@ -536,6 +548,8 @@ def test_events_tools(
     device_client.DeleteDevice(response)
     events_collector.stop()
 
+    LOGGER.warning('test_get_device_events end')
+
 
 def test_get_device_events(
         context_client : ContextClient,                 # pylint: disable=redefined-outer-name,unused-argument
@@ -564,6 +578,8 @@ def test_get_device_events(
     device_client.DeleteDevice(response)
     events_collector.stop()
 
+    LOGGER.warning('test_get_device_events end')
+
 def test_listen_events(
         context_client : ContextClient,                 # pylint: disable=redefined-outer-name,unused-argument
         device_client : DeviceClient,                   # pylint: disable=redefined-outer-name
@@ -589,3 +605,5 @@ def test_listen_events(
 
     device_client.DeleteDevice(response)
     events_collector.stop()
+
+    LOGGER.warning('test_listen_events end')