MongoDB 3.6
ondersteunt $changeStream
functie om wijzigingen in een collectie te bekijken.
Bijvoorbeeld PyMongo gebruiken die compatibel is met MongoDB 3.6:
for change in db.collection.watch():
print(change)
De geretourneerde ChangeStream wordt automatisch hervat wanneer deze tijdens iteratie een mogelijk herstelbare fout tegenkomt. Het hervattingsproces is transparant voor de toepassing en zorgt ervoor dat er geen documenten met wijzigingsstromen verloren gaan.
Nog een voorbeeld om alle invoegingen in een verzameling te bekijken met PyMongo :
try:
for insert_change in db.collection.watch(
[{'$match': {'operationType': 'insert'}}]):
print(insert_change)
except pymongo.errors.PyMongoError:
# We know it's unrecoverable:
log.error('...')