On this page
$currentOp (aggregation)
在本页面
Definition
3.6 版的新功能。
$currentOp
- 返回文档流,其中包含有关 MongoDB 部署的活动和/或休眠操作的信息。要运行$currentOp,请使用
admin
数据库上的db.aggregate()帮助器。
- 返回文档流,其中包含有关 MongoDB 部署的活动和/或休眠操作的信息。要运行$currentOp,请使用
$currentOp为currentOp命令和db.currentOp方法提供了更好的替代方法。后两个命令仅限于在单个文档中返回所有操作,该操作不能超过最大 16MB BSON 大小。由于$currentOp管道返回游标,因此它们不受这些限制。
$currentOp还使您可以在文档通过管道时对结果执行任意转换。
$currentOp将选项文档作为其操作数。
{ $currentOp: { allUsers: <boolean>, idleConnections: <boolean> } }
指定一个空文档以使用默认值。
Behavior
Option | Description |
---|---|
allUsers |
布尔值。如果设置为false ,则$currentOp将仅报告属于运行该命令的用户的操作。如果设置为true ,则$currentOp将报告属于所有用户的操作。 |
Note
要与{ allUsers : true }
一起运行$currentOp,必须具有inprog
特权。
默认为false
。
| idleConnections
|布尔值。如果设置为false
,则$currentOp将仅报告活动操作。如果设置为true
,则将返回所有操作,包括空闲连接。
默认为false
。
Constraints
$currentOp必须是管道中的第一阶段。
以$currentOp开头的管道只能在
admin
数据库上运行。在启用了身份验证的独立集或副本集上,如果
allUsers
参数设置为 true,则需要inprog
特权才能运行$currentOp。在分片群集上,需要
inprog
特权才能运行所有$currentOp管道。
Example
下面的示例在第一阶段运行$currentOp操作,并在第二阶段过滤该操作的结果。
use admin
db.aggregate( [
{ $currentOp : { allUsers: true, idleConnections: true } },
{ $match : { shard: "shard01" } }
] )