Я хочу записать "executionStats"
моего запроса и сам запрос вывести в файл json. Чтобы сделать это, я запускаю свой запрос на монго из командной строки linux вместо того, чтобы делать это с помощью оболочки Mongo. Причина, по которой я так поступаю, заключается в том, что я работаю в .sh
скрипте, который запускает ряд тестов, и мне нужно вводить команду сна после выполнения каждого запроса монго.
Это мое предложение по linux и запрос монго:
mongo test --eval 'printjson(db.prueba1gb_4.explain("executionStats").aggregate ([{$addFields: {HOMETAG: {$concat: [{$toString:"$PlateState"}, "-", {$toString:"$TagAgencyID"}]}}}, {$out: "trans1gb"}]))' >> trans1.json;
Если я запускаю это предложение в одиночку, оно работает нормально, и в Mongo все оправдывается, также создается файл json. Проблема возникает, когда я получаю доступ к файлу JSON, чтобы найти следующее:
MongoDB shell version v4.1.1
connecting to: mongodb://127.0.0.1:27017/test
MongoDB server version: 4.1.1
2018-08-31T12:23:13.812+0000 E QUERY [js] SyntaxError: invalid property id @(shell eval):1:62
MongoDB shell version v4.1.1
connecting to: mongodb://127.0.0.1:27017/test
MongoDB server version: 4.1.1
2018-08-31T12:32:26.038+0000 E QUERY [js] SyntaxError: invalid property id @(shell eval):1:52
MongoDB shell version v4.1.1
connecting to: mongodb://127.0.0.1:27017/test
MongoDB server version: 4.1.1
2018-08-31T13:14:38.058+0000 E QUERY [js] SyntaxError: invalid property id @(shell eval):1:62
MongoDB shell version v4.1.1
connecting to: mongodb://127.0.0.1:27017/test
MongoDB server version: 4.1.1
2018-08-31T13:20:04.308+0000 E QUERY [js] SyntaxError: invalid property id @(shell eval):1:52
Я понятия не имею, что происходит не так, синтаксис кажется правильным, и Монго управляет всем. Проблема в выводе json.
Буду признателен за любую помощь в этом.
Заранее спасибо