文档菜单
文档首页
/
MongoDB 手册
/ /

创建事件

本页内容

  • 摘要
  • 描述
  • 示例
create

版本6.0.

在监视数据库上创建集合时发生 create 事件,并且变更流具有 showExpandedEvents 选项设置为 trueshowExpandedEvents 选项设置为 true

字段
类型
描述
_id
文档

一个作为变更流事件标识符的 BSON 对象。该值用作在恢复变更流时 resumeAfter 参数的 resumeToken。该 _id 对象具有以下形式

{
"_data" : <BinData|hex string>
}

_data 类型取决于 MongoDB 版本,以及在变更流打开或恢复时的一些情况下的 功能兼容性版本 (fCV)。有关 _data 类型完整列表,请参阅 恢复令牌

有关通过 resumeToken 恢复变更流的示例,请参阅 恢复变更流

clusterTime
时间戳

clusterTime 是与事件关联的操作日志条目的时间戳。

由于操作日志大小限制多文档事务可能会创建多个操作日志条目。在一个事务中,给定操作日志条目中排队的更改流事件共享相同的clusterTime

具有相同clusterTime的事件可能并不都与同一个事务相关。有些事件根本不与事务相关。从MongoDB 8.0开始,这可以适用于任何部署的事件。在之前的版本中,这种行为仅适用于分片集群上的事件。

要识别单个事务的事件,您可以在更改流事件文档中使用lsidtxnNumber的组合。

已更改版本8.0.

collectionUUID
UUID

如果更改发生在集合上,collectionUUID指示集合的UUID。如果更改发生在视图上,collectionUUID不存在。

版本6.0.

lsid
document

与事务相关联的会话的标识符。

仅在操作是多文档事务的一部分时才出现。

ns
document

受事件影响的作用域(数据库和/或集合)。

ns.coll
string

事件发生时的集合名称。

ns.db
string

事件发生时的数据库名称。

operationDescription
document

更改操作的附加信息。

当更改流使用扩展事件时,此文档及其子字段才出现。

版本6.0.

operationDescription.
idIndex
document

新集合的默认_id索引。

版本6.0.

operationType
string

更改通知报告的操作类型。

对于这些更改事件,返回值为create

txnNumber
NumberLong

lsid一起,这是一个帮助唯一标识事务的数字。

仅在操作是多文档事务的一部分时才出现。

wallTime

数据库操作的数据库服务器日期和时间。wallTimeclusterTime不同,因为clusterTime是从与数据库操作事件相关的操作日志条目中获取的时间戳。

版本6.0.

以下示例展示了一个 create 事件

{
"_id": { <ResumeToken> },
"operationType": "create",
"clusterTime": Timestamp({ t: 1654894547, i: 24 }),
"collectionUUID": UUID("98046a1a-b649-4e5b-9c75-67594221ce19"),
"wallTime": ISODate("2022-06-10T20:55:47.947Z"),
"ns": {
"db": "test",
"coll": "names"
},
"operationDescription": {
"idIndex": { "v": 2, "key": { _id: 1 }, "name": "_id_" }
}
}

返回

变更事件

本页内容