0
나는 에서 mongodump
명령을 실행 중입니다.노드 child_process는 몽더 덤프에 대해 stderr에서 유효한 결과를 제공합니다.
내가 모두 exec
및 spawn
시도하지만, mongodump
인쇄 진행이 stdout
var exec = require('child_process').exec,
ls = exec('mongodump --gzip --archive="/home/test-machine/test.archive" --db myDB');
ls.stdout.on('data', function (data) {
console.log('stdout: ' + data.toString());
});
ls.stderr.on('data', function (data) {
console.log('stderr: ' + data.toString());
});
ls.on('exit', function (code) {
console.log('child process exited with code ' + code.toString());
});
mongodump가 충돌 또는 오류를 던지고되지 않는 대신 stderr
의 data
이벤트를 치고, 그 그것으로 실행 할까요. 당신이 수동으로 오류 메시지를 필터링해야하기 때문에 조금 더 열심히 오류 출력을 분석하게하지만 어쨌든, 매우 드문 일이 아니다
그 이유는 무엇입니까? 당신은 그 일이 그렇게 드문 일이 아니라고 말했습니다. 왜 그런지 말해 줄 수 있습니까? –
'mongodump'는'stdout'에 덤프 할 수있는 옵션을 가지고 있습니다. 그래서 로그 메시지가 그것을 방해 할 것이므로'stderr'를 사용하십시오. 'stdout'에 결과물을 쓰거나 (그렇게 할 수있는 옵션이있는) 많은 도구는 그 규칙을 사용합니다. – robertklep