定義
db.currentOp()
傳回資料庫執行個體上正在運作的操作資訊的文檔。
db.currentOp()方法有如下格式:
db.currentOp(<operations>)
db.currentOp()方法可使用如下可選參數:
參數 類型 描述
operations 布爾值或文檔 可選。指定報告的操作。可以輸入布爾值或一個文檔。
指定true,包含空閑連接配接和系統操作。
指定帶有查詢條件的文檔,隻報告比對條件的操作。
行為
如果傳遞true給db.currentOp(),該方法傳回所有操作的資訊,包括空閑連接配接和系統操作。
db.currentOp(true)
傳遞true等于傳遞了一個查詢文檔{ '$all': true }。
如果傳遞一個查詢文檔給db.currentOp(),隻傳回比對查詢條件的目前操作。
你也可以指定{ '$all: true }查詢文檔傳回所有正在運作的操作資訊,包括空閑連接配接和系統操作。如果
查詢文檔包括 '$all':true 以及其他查詢條件,隻會應用 '$all': true。
通路控制
在系統上運作使用者授權驗證,使用者必須有通路inprog行為的權限。
示例
下面的示例使用帶有不同查詢文檔的db.currentOp()方法過濾輸出。
等待鎖的寫操作
下面的示例傳回正在等待鎖的所有寫操作資訊:
1
2
3
4
5
6
7
8
9
<code>db.currentOp( </code>
<code> </code><code>{ </code>
<code> </code><code>"waitingForLock"</code> <code>: </code><code>true</code><code>, </code>
<code> </code><code>$</code><code>or</code><code>: [ </code>
<code> </code><code>{ </code><code>"op"</code> <code>: { </code><code>"$in"</code> <code>: [ </code><code>"insert"</code><code>, </code><code>"update"</code><code>, </code><code>"remove"</code> <code>] } }, </code>
<code> </code><code>{ </code><code>"query.findandmodify"</code><code>: { $exists: </code><code>true</code> <code>} } </code>
<code> </code><code>] </code>
<code> </code><code>} </code>
<code>)</code>
沒有Yields的活動操作
下面的示例傳回所有活動的正在運作的還沒有Yields的操作的資訊:
<code> </code><code>"active"</code> <code>: </code><code>true</code><code>, </code>
<code> </code><code>"numYields"</code> <code>: 0, </code>
<code> </code><code>"waitingForLock"</code> <code>: </code><code>false</code>
對于特定資料庫的活動操作
下面的示例傳回對于資料庫db1運作時間大于3秒的所有活動操作:
<code> </code><code>"secs_running"</code> <code>: { </code><code>"$gt"</code> <code>: 3 }, </code>
<code> </code><code>"ns"</code> <code>: /^db1\./ </code>
活動索引操作
下面的示例傳回索引建立操作的資訊:
<code> </code><code>{ </code>
<code> </code><code>$</code><code>or</code><code>: [ </code>
<code> </code><code>{ op: </code><code>"query"</code><code>, </code><code>"query.createIndexes"</code><code>: { $exists: </code><code>true</code> <code>} }, </code>
<code> </code><code>{ op: </code><code>"insert"</code><code>, ns: /\.system\.indexes\b/ } </code>
<code> </code><code>] </code>
<code> </code><code>} </code>
本文轉自UltraSQL51CTO部落格,原文連結: http://blog.51cto.com/ultrasql/1706393,如需轉載請自行聯系原作者