Docs Menu

変更イベント

変更ストリームでは、コレクション、データベース、または配置の変更が監視されます。

監視対象のリソースに変更が発生すると、実施された操作と変更についての情報を盛り込んだ変更イベント通知ドキュメントが変更、ストリームによって返されます。

イベント
説明

コレクションの作成時に発生します。

showExpandedEventsオプションをtrueに設定する必要があります。

バージョン 6.0 で追加。

コレクションでのインデックスの作成時に発生します。

showExpandedEventsオプションをtrueに設定する必要があります。

バージョン 6.0 で追加。

ドキュメントがコレクションから削除されたときに発生します。

コレクションがデータベースから削除されたときに発生します。

データベースが削除されたときに発生します。

インデックスがコレクションから削除されるときに発生します。

showExpandedEventsオプションをtrueに設定する必要があります。

バージョン 6.0 で追加。

操作によってコレクションにドキュメントが追加されたときに発生します。

操作によって変更ストリームが無効になったときに発生します。

コレクションが変更されたときに発生します。

showExpandedEventsオプションをtrueに設定する必要があります。

バージョン 6.0 で追加。

コレクション名が変更されたときに発生します。

アップデート操作によってドキュメントがコレクションから削除され、新しいドキュメントに置き換えられるときに発生します。

コレクションのシャードキーとデータの分散状況が変更されたときに発生します。

showExpandedEventsオプションをtrueに設定する必要があります。

バージョン6.1の新機能( 6.0.14でも利用可能 )

コレクションがシャーディングされたときに発生します。

showExpandedEventsオプションをtrueに設定する必要があります。

バージョン 6.0 で追加。

操作によってコレクション内のドキュメントがアップデートされたときに発生します。

各変更イベントには _id フィールドが含まれます。このフィールドにはドキュメントが含まれます。このドキュメントは、変更ストリームを開始する際の再開トークンとして使用できます。

バージョン 6.0 で追加。

MongoDB 6.0 以降、変更ストリームは、 createIndexes イベントdropIndexesイベントなどの DDL イベントの変更通知をサポートします。展開されたイベントを変更ストリームに含めるには、showExpandedEvents オプションを使用して変更ストリームカーソルを作成します。

以下に例を挙げます。

let cur = db.names.aggregate( [ {
$changeStream: {
showExpandedEvents: true
}
}
] )
cur.next()