#javascript #json #mon&odb
#javascript #json #mon&odb
Вопрос:
кто-нибудь знает, как фильтровать вывод mon&odb db.adminCommand? Потому что, если я запускаю эту команду db.adminCommand({ "currentOp": true, "op" : "query", "planSummary": "COLLSCAN" })
, я получаю огромный вывод JSON, но меня интересуют только некоторые поля (например, secs_runnin&, op, command, $ db)
Большое спасибо!
Ответ №1:
Вы можете добавить фильтры непосредственно к объекту command следующим образом:
var commandObj = {
"currentOp" : 1,
"waitin&ForLock" : true,
"$or" : [
{
"op" : {
"$in" : [
"insert",
"update",
"remove"
]
}
},
{
"command.findandmodify" : {
"$exists" : true
}
}
]
};
db.adminCommand(commandObj);
Вы можете увидеть некоторые примеры фильтров в документах Mon&oDB: https://docs.mon&odb.com/manual/reference/method/db.currentOp/#examples
Просто перечитайте ваш вопрос, и я думаю, вы, возможно, имели в виду просто проецирование полей обратно из базы данных, которая вам небезразлична? если это так, вы можете просто выполнить map поверх текущих результатов, чтобы видеть только то, что вас волнует?
db.adminCommand(commandObj).inpro&.map(x =&&t; x.opid};