Exemple #1
0
 def description_changed(self, event):
     previous_server_type = event.previous_description.server_type
     new_server_type = event.new_description.server_type
     if new_server_type != previous_server_type:
         logger.debug(
             f"Server {event.server_address} changed type from {event.previous_description.server_type_name} to "
             f"{event.new_description.server_type_name}")
Exemple #2
0
 def description_changed(self, event):
     logger.debug(
         f"Topology description updated for topology id {event.topology_id}"
     )
     previous_topology_type = event.previous_description.topology_type
     new_topology_type = event.new_description.topology_type
     if new_topology_type != previous_topology_type:
         logger.debug(
             f"Topology {event.topology_id} changed type from {event.previous_description.topology_type_name} to "
             f"{event.new_description.topology_type_name}")
     if not event.new_description.has_writable_server():
         logger.debug("No writable servers available.")
     if not event.new_description.has_readable_server():
         logger.debug("No readable servers available.")
Exemple #3
0
    def _end_trace_malloc(self):
        if not self.show_memory:
            return

        simple_logger.debug(msg="=== START SNAPSHOT ===")
        snapshot = tracemalloc.take_snapshot()
        snapshot = snapshot.filter_traces(
            filters=self._get_trace_malloc_filters())
        for stat in snapshot.statistics(key_type="lineno", cumulative=True):
            simple_logger.debug(msg=f"{stat}")
        size, peak = tracemalloc.get_traced_memory()
        snapshot_size = tracemalloc.get_tracemalloc_memory()
        simple_logger.debug(
            msg=f"❕size={self._bytes_to_megabytes(size=size)}, "
            f"❗peak={self._bytes_to_megabytes(size=peak)}, "
            f"💾snapshot_size={self._bytes_to_megabytes(size=snapshot_size)}")
        tracemalloc.clear_traces()
        simple_logger.debug(msg="=== END SNAPSHOT ===")
Exemple #4
0
 def failed(self, event):
     logger.debug(
         f"Command {event.command_name} with request id {event.request_id} on server {event.connection_id} failed "
         f"in {event.duration_micros} microseconds")
Exemple #5
0
 def failed(self, event):
     logger.debug(
         f"Heartbeat to server {event.connection_id} failed with error {event.reply}"
     )
Exemple #6
0
 def opened(self, event):
     logger.debug(f"Topology with id {event.topology_id} opened")
Exemple #7
0
 def connection_created(self, event):
     logger.debug(
         f"[pool {event.address}][conn #{event.connection_id}] connection created"
     )
Exemple #8
0
 def succeeded(self, event):
     logger.debug(
         f"Heartbeat to server {event.connection_id} succeeded with reply {event.reply.document}"
     )
Exemple #9
0
 def create_client(self):
     """Create MongoDB client."""
     logger.debug(msg="Creating MongoDB client")
     self.__class__.client = motor.motor_asyncio.AsyncIOMotorClient(
         self.db_url)
Exemple #10
0
 def _print_timing(self, name: str, precision: int = 6):
     if not self.show_timing:
         return
     simple_logger.debug(
         f"📊Execution timing of: '{name}' ⏱: {self._end_time - self._start_time:.{precision}f} seconds"
     )
Exemple #11
0
 def connection_checked_in(self, event):
     logger.debug(
         f"[pool {event.address}][conn #{event.connection_id}] connection checked into pool"
     )
Exemple #12
0
 def opened(self, event):
     logger.debug(
         f"Server {event.server_address} added to topology {event.topology_id}"
     )
Exemple #13
0
 def connection_check_out_failed(self, event):
     logger.debug(
         f"[pool {event.address}] connection check out failed, reason: {event.reason}"
     )
Exemple #14
0
 def connection_checked_out(self, event):
     logger.debug(
         f"[pool {event.address}][conn #{event.connection_id}] connection checked out of pool"
     )
Exemple #15
0
 def connection_check_out_started(self, event):
     logger.debug(f"[pool {event.address}] connection check out started")
Exemple #16
0
 def connection_closed(self, event):
     logger.debug(
         f"[pool {event.address}][conn #{event.connection_id}] connection closed, reason: {event.reason}"
     )
Exemple #17
0
 def connection_ready(self, event):
     logger.debug(
         f"[pool {event.address}][conn #{event.connection_id}] connection setup succeeded"
     )
Exemple #18
0
 def closed(self, event):
     logger.debug(f"Topology with id {event.topology_id} closed")
Exemple #19
0
 def succeeded(self, event):
     logger.debug(
         f"Command '{event.command_name}' with request id {event.request_id} on server {event.connection_id} "
         f"succeeded in {event.duration_micros} microseconds")
Exemple #20
0
 def retrieve_client(self) -> pymongo.MongoClient:
     """Retrieve existing MongoDB client or create it (at first call)."""
     if self.__class__.client is None:  # pragma: no cover
         logger.debug(msg="Initialization of MongoDB")
         self.create_client()
     return self.__class__.client
Exemple #21
0
 def closed(self, event):
     logger.debug(
         f"Server {event.server_address} removed from topology {event.topology_id}"
     )
Exemple #22
0
 def delete_client(self):
     """Close MongoDB client."""
     logger.debug(msg="Disconnecting from MongoDB")
     self.__class__.client.close()
     self.__class__.client = None  # noqa
Exemple #23
0
 def started(self, event):
     logger.debug(f"Heartbeat sent to server {event.connection_id}")
Exemple #24
0
 def started(self, event):
     logger.debug(
         f"Command '{event.command_name}' with request id {event.request_id} started on server {event.connection_id}"
     )
Exemple #25
0
 def pool_closed(self, event):
     logger.debug(f"[pool {event.address}] pool closed")