event_loggers – Example loggers

Example event logger classes.

Added in version 3.11.

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

monitoring.register(CommandLogger())

or

MongoClient(event_listeners=[CommandLogger()])

See also

This module is compatible with both the synchronous and asynchronous PyMongo APIs.

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)

Abstract method to handle a CommandFailedEvent.

Parameters:

event (CommandFailedEvent) – An instance of CommandFailedEvent.

Return type:

None

started(event)

Abstract method to handle a CommandStartedEvent.

Parameters:

event (CommandStartedEvent) – An instance of CommandStartedEvent.

Return type:

None

succeeded(event)

Abstract method to handle a CommandSucceededEvent.

Parameters:

event (CommandSucceededEvent) – An instance of CommandSucceededEvent.

Return type:

None

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.

Added in version 3.11.

connection_check_out_failed(event)

Abstract method to handle a ConnectionCheckOutFailedEvent.

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

Parameters:

event (ConnectionCheckOutFailedEvent) – An instance of ConnectionCheckOutFailedEvent.

Return type:

None

connection_check_out_started(event)

Abstract method to handle a ConnectionCheckOutStartedEvent.

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

Parameters:

event (ConnectionCheckOutStartedEvent) – An instance of ConnectionCheckOutStartedEvent.

Return type:

None

connection_checked_in(event)

Abstract method to handle a ConnectionCheckedInEvent.

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

Parameters:

event (ConnectionCheckedInEvent) – An instance of ConnectionCheckedInEvent.

Return type:

None

connection_checked_out(event)

Abstract method to handle a ConnectionCheckedOutEvent.

Emitted when the driver successfully checks out a connection.

Parameters:

event (ConnectionCheckedOutEvent) – An instance of ConnectionCheckedOutEvent.

Return type:

None

connection_closed(event)

Abstract method to handle a ConnectionClosedEvent.

Emitted when a connection Pool closes a connection.

Parameters:

event (ConnectionClosedEvent) – An instance of ConnectionClosedEvent.

Return type:

None

connection_created(event)

Abstract method to handle a ConnectionCreatedEvent.

Emitted when a connection Pool creates a Connection object.

Parameters:

event (ConnectionCreatedEvent) – An instance of ConnectionCreatedEvent.

Return type:

None

connection_ready(event)

Abstract method to handle a ConnectionReadyEvent.

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

Parameters:

event (ConnectionReadyEvent) – An instance of ConnectionReadyEvent.

Return type:

None

pool_cleared(event)

Abstract method to handle a PoolClearedEvent.

Emitted when a connection Pool is cleared.

Parameters:

event (PoolClearedEvent) – An instance of PoolClearedEvent.

Return type:

None

pool_closed(event)

Abstract method to handle a PoolClosedEvent.

Emitted when a connection Pool is closed.

Parameters:

event (PoolClosedEvent) – An instance of PoolClosedEvent.

Return type:

None

pool_created(event)

Abstract method to handle a PoolCreatedEvent.

Emitted when a connection Pool is created.

Parameters:

event (PoolCreatedEvent) – An instance of PoolCreatedEvent.

Return type:

None

pool_ready(event)

Abstract method to handle a PoolReadyEvent.

Emitted when a connection Pool is marked ready.

Parameters:

event (PoolReadyEvent) – An instance of PoolReadyEvent.

Return type:

None

Added in version 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.

Added in version 3.11.

failed(event)

Abstract method to handle a ServerHeartbeatFailedEvent.

Parameters:

event (ServerHeartbeatFailedEvent) – An instance of ServerHeartbeatFailedEvent.

Return type:

None

started(event)

Abstract method to handle a ServerHeartbeatStartedEvent.

Parameters:

event (ServerHeartbeatStartedEvent) – An instance of ServerHeartbeatStartedEvent.

Return type:

None

succeeded(event)

Abstract method to handle a ServerHeartbeatSucceededEvent.

Parameters:

event (ServerHeartbeatSucceededEvent) – An instance of ServerHeartbeatSucceededEvent.

Return type:

None

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.

Added in version 3.11.

closed(event)

Abstract method to handle a ServerClosedEvent.

Parameters:

event (ServerClosedEvent) – An instance of ServerClosedEvent.

Return type:

None

description_changed(event)

Abstract method to handle a ServerDescriptionChangedEvent.

Parameters:

event (ServerDescriptionChangedEvent) – An instance of ServerDescriptionChangedEvent.

Return type:

None

opened(event)

Abstract method to handle a ServerOpeningEvent.

Parameters:

event (ServerOpeningEvent) – An instance of ServerOpeningEvent.

Return type:

None

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.

Added in version 3.11.

closed(event)

Abstract method to handle a TopologyClosedEvent.

Parameters:

event (TopologyClosedEvent) – An instance of TopologyClosedEvent.

Return type:

None

description_changed(event)

Abstract method to handle a TopologyDescriptionChangedEvent.

Parameters:

event (TopologyDescriptionChangedEvent) – An instance of TopologyDescriptionChangedEvent.

Return type:

None

opened(event)

Abstract method to handle a TopologyOpenedEvent.

Parameters:

event (TopologyOpenedEvent) – An instance of TopologyOpenedEvent.

Return type:

None