event_loggers -- Example loggers#

Example event logger classes.

在 3.11 版本加入.

These loggers can be registered using register() or MongoClient.

monitoring.register(CommandLogger())

or

MongoClient(event_listeners=[CommandLogger()])

class pymongo.event_loggers.CommandLogger#

A simple listener that logs command events.

Listens for CommandStartedEvent, CommandSucceededEvent and CommandFailedEvent events and logs them at the INFO severity level using logging. .. versionadded:: 3.11

failed(event: CommandFailedEvent) None#

Abstract method to handle a CommandFailedEvent.

Parameters:
  • event: An instance of CommandFailedEvent.

started(event: CommandStartedEvent) None#

Abstract method to handle a CommandStartedEvent.

Parameters:
  • event: An instance of CommandStartedEvent.

succeeded(event: CommandSucceededEvent) None#

Abstract method to handle a CommandSucceededEvent.

Parameters:
  • event: An instance of CommandSucceededEvent.

class pymongo.event_loggers.ConnectionPoolLogger#

A simple listener that logs server connection pool events.

Listens for PoolCreatedEvent, PoolClearedEvent, PoolClosedEvent, :~pymongo.monitoring.class:ConnectionCreatedEvent, ConnectionReadyEvent, ConnectionClosedEvent, ConnectionCheckOutStartedEvent, ConnectionCheckOutFailedEvent, ConnectionCheckedOutEvent, and ConnectionCheckedInEvent events and logs them at the INFO severity level using logging.

在 3.11 版本加入.

connection_check_out_failed(event: ConnectionCheckOutFailedEvent) None#

Abstract method to handle a ConnectionCheckOutFailedEvent.

Emitted when the driver's attempt to check out a connection fails.

Parameters:
  • event: An instance of ConnectionCheckOutFailedEvent.

connection_check_out_started(event: ConnectionCheckOutStartedEvent) None#

Abstract method to handle a ConnectionCheckOutStartedEvent.

Emitted when the driver starts attempting to check out a connection.

Parameters:
  • event: An instance of ConnectionCheckOutStartedEvent.

connection_checked_in(event: ConnectionCheckedInEvent) None#

Abstract method to handle a ConnectionCheckedInEvent.

Emitted when the driver checks in a connection back to the connection Pool.

Parameters:
  • event: An instance of ConnectionCheckedInEvent.

connection_checked_out(event: ConnectionCheckedOutEvent) None#

Abstract method to handle a ConnectionCheckedOutEvent.

Emitted when the driver successfully checks out a connection.

Parameters:
  • event: An instance of ConnectionCheckedOutEvent.

connection_closed(event: ConnectionClosedEvent) None#

Abstract method to handle a ConnectionClosedEvent.

Emitted when a connection Pool closes a connection.

Parameters:
  • event: An instance of ConnectionClosedEvent.

connection_created(event: ConnectionCreatedEvent) None#

Abstract method to handle a ConnectionCreatedEvent.

Emitted when a connection Pool creates a Connection object.

Parameters:
  • event: An instance of ConnectionCreatedEvent.

connection_ready(event: ConnectionReadyEvent) None#

Abstract method to handle a ConnectionReadyEvent.

Emitted when a connection has finished its setup, and is now ready to use.

Parameters:
  • event: An instance of ConnectionReadyEvent.

pool_cleared(event: PoolClearedEvent) None#

Abstract method to handle a PoolClearedEvent.

Emitted when a connection Pool is cleared.

Parameters:
  • event: An instance of PoolClearedEvent.

pool_closed(event: PoolClosedEvent) None#

Abstract method to handle a PoolClosedEvent.

Emitted when a connection Pool is closed.

Parameters:
  • event: An instance of PoolClosedEvent.

pool_created(event: PoolCreatedEvent) None#

Abstract method to handle a PoolCreatedEvent.

Emitted when a connection Pool is created.

Parameters:
  • event: An instance of PoolCreatedEvent.

pool_ready(event: PoolReadyEvent) None#

Abstract method to handle a PoolReadyEvent.

Emitted when a connection Pool is marked ready.

Parameters:
  • event: An instance of PoolReadyEvent.

在 4.0 版本加入.

class pymongo.event_loggers.HeartbeatLogger#

A simple listener that logs server heartbeat events.

Listens for ServerHeartbeatStartedEvent, ServerHeartbeatSucceededEvent, and ServerHeartbeatFailedEvent events and logs them at the INFO severity level using logging.

在 3.11 版本加入.

failed(event: ServerHeartbeatFailedEvent) None#

Abstract method to handle a ServerHeartbeatFailedEvent.

Parameters:
  • event: An instance of ServerHeartbeatFailedEvent.

started(event: ServerHeartbeatStartedEvent) None#

Abstract method to handle a ServerHeartbeatStartedEvent.

Parameters:
  • event: An instance of ServerHeartbeatStartedEvent.

succeeded(event: ServerHeartbeatSucceededEvent) None#

Abstract method to handle a ServerHeartbeatSucceededEvent.

Parameters:
  • event: An instance of ServerHeartbeatSucceededEvent.

class pymongo.event_loggers.ServerLogger#

A simple listener that logs server discovery events.

Listens for ServerOpeningEvent, ServerDescriptionChangedEvent, and ServerClosedEvent events and logs them at the INFO severity level using logging.

在 3.11 版本加入.

closed(event: ServerClosedEvent) None#

Abstract method to handle a ServerClosedEvent.

Parameters:
  • event: An instance of ServerClosedEvent.

description_changed(event: ServerDescriptionChangedEvent) None#

Abstract method to handle a ServerDescriptionChangedEvent.

Parameters:
  • event: An instance of ServerDescriptionChangedEvent.

opened(event: ServerOpeningEvent) None#

Abstract method to handle a ServerOpeningEvent.

Parameters:
  • event: An instance of ServerOpeningEvent.

class pymongo.event_loggers.TopologyLogger#

A simple listener that logs server topology events.

Listens for TopologyOpenedEvent, TopologyDescriptionChangedEvent, and TopologyClosedEvent events and logs them at the INFO severity level using logging.

在 3.11 版本加入.

closed(event: TopologyClosedEvent) None#

Abstract method to handle a TopologyClosedEvent.

Parameters:
  • event: An instance of TopologyClosedEvent.

description_changed(event: TopologyDescriptionChangedEvent) None#

Abstract method to handle a TopologyDescriptionChangedEvent.

Parameters:
  • event: An instance of TopologyDescriptionChangedEvent.

opened(event: TopologyOpenedEvent) None#

Abstract method to handle a TopologyOpenedEvent.

Parameters:
  • event: An instance of TopologyOpenedEvent.