変更イベント
変更ストリームでは、コレクション、データベース、または配置の変更が監視されます。
監視対象のリソースに変更が発生すると、実施された操作と変更についての情報を盛り込んだ変更イベント通知ドキュメントが変更、ストリームによって返されます。
操作の種類
イベント | 説明 |
---|---|
ドキュメントがコレクションから削除されたときに発生します。 | |
コレクションがデータベースから削除されたときに発生します。 | |
データベースが削除されたときに発生します。 | |
操作によってコレクションにドキュメントが追加されたときに発生します。 | |
操作によって変更ストリームが無効になったときに発生します。 | |
シャードキーが変更されたときに発生します。 バージョン 6.1 で追加。 | |
コレクション名が変更されたときに発生します。 | |
アップデート操作によってドキュメントがコレクションから削除され、新しいドキュメントに置き換えられるときに発生します。 | |
コレクションのシャードキーとデータの分散状況が変更されたときに発生します。 showExpandedEventsオプションを バージョン6.1の新機能( 6.0.14でも利用可能 ) | |
操作によってコレクション内のドキュメントがアップデートされたときに発生します。 |
再開トークン
各変更イベントには _id
フィールドが含まれます。このフィールドにはドキュメントが含まれます。このドキュメントは、変更ストリームを開始する際の再開トークンとして使用できます。
拡張イベント
バージョン 6.0 で追加。
MongoDB 6.0 以降、変更ストリームは、 createIndexes イベントやdropIndexesイベントなどの DDL イベントの変更通知をサポートします。展開されたイベントを変更ストリームに含めるには、showExpandedEvents
オプションを使用して変更ストリームカーソルを作成します。
以下に例を挙げます。
let cur = db.names.aggregate( [ { $changeStream: { showExpandedEvents: true } } ] ) cur.next()