用猫鼬运行currentOp

时间:2018-07-02 16:04:53

标签: node.js mongodb mongoose

我正在尝试运行一个脚本来终止较长的查询,我们遇到了一些流氓查询运行了一个小时左右的问题

我找到了一个终止查询的脚本,但似乎无法使其正常工作

var mongoose = require('mongoose');

mongoose.connect(dburl);

var db = mongoose.connection;

db.command({ currentOp: 1 }, function (err, result) {
    if (err) {
        console.error(`Agenda :: Kill long mongo queries | Error: ${err}`);
    } else {
        for (let oper in result.inprog) {
            let op = result.inprog[oper - 0];
            if (op.secs_running > ENUMS.MONGO_KILL_AFTER_SECONDS && op.op === "query" && !op.ns.startsWith("local")) {
                console.info(`Agenda :: Kill long mongo queries | Killing opId: ${op.opid} Running over ${op.secs_running}`);
                db.killOp(op.opid);
            }
        }
    }
});

它不断失败  “ TypeError:db.command不是函数”

但是我找不到太多有关运行admin命令进行修复的文档

0 个答案:

没有答案