2012-07-03 63 views

回答

3

根據來自MongoDB文檔的Viewing and Terminating Current Operationdb.currentOp()命令僅僅是針對數據庫的特殊集合$cmd.sys.inprog的查詢。您也可以通過JS外殼證實了這一點:

$ mongo 
MongoDB shell version: 2.1.0 
connecting to: test 
> db.currentOp 
function (arg) { 
    var q = {}; 
    if (arg) { 
     if (typeof arg == "object") { 
      Object.extend(q, arg); 
     } else if (arg) { 
      q.$all = true; 
     } 
    } 
    return this.$cmd.sys.inprog.findOne(q); 
} 

我沒有使用CodeIgniter或Cimongo工作,但看着Cimongo.php,你應該能夠使用get()$cmd.sys.inprog接收光標,你然後可以用來讀取第一個元素。 MongoCollection::findOne()似乎沒有任何抽象,但這將是我在原始PHP中執行此操作的首選:

$mongo = new Mongo(); 
$inprog = $mongo->selectCollection('test', '$cmd.sys.inprog'); 
var_dump($inprog->findOne());