2013-03-07 6 views
5

の出力をmongoDBのメンテナンスの一部として取得します。mongoシェルを実行して、2つのスクリプトをロードします。ルックスが好きな私は実行しているコマンドは次のとおりです。mongoシェルスクリプト

$MONGO_HOME/bin/mongo --verbose --port 27017 replSetConfig.js initializeReplicaSet.js

を私が得た出力は次のようになります。

MongoDB shell version: 2.2.3 
Thu Mar 7 03:00:00 versionCmpTest passed 
Thu Mar 7 03:00:00 versionArrayTest passed connecting to: 127.0.0.1:27017/test 
Thu Mar 7 03:00:01 creating new connection to:127.0.0.1:27017 
Thu Mar 7 03:00:01 BackgroundJob starting: ConnectBG 
Thu Mar 7 03:00:01 connected connection! 
loading file: js/replSet.config.js 
loading file: js/initializeReplicaSet.js 

私はログファイルに出力をリダイレクトしていますが、私は希望します読み込まれたスクリプトの出力も表示されます。私。シェルを起動するとシェルの出力が表示され、同じスクリプトの場合はload("...")が呼び出されます。出力をキャプチャする方法はありますか?あなたがprint()printjson()ステートメントを使用する必要があるスクリプトの出力を追加するには

おかげ

+1

私は正しく質問をしなかったと思います。しかし、私はロギングのためにmongoscriptファイル内で 'printjson()'を使用します。 –

+0

それは私が終わる場所になるように見える...それはいくつかの状況に適しているが、私はどのようにログに記録するか分からない。スクリプトで呼び出すrs.intitate()コマンド...?これは私がスクリプトで呼んでいるものであり、結果を得る方法がわかりません。コマンドの後にrs.status()を記録できますが、失敗した場合は失敗したことを通知しません。 –

+1

スクリプトの出力を取得するには、print()またはprintjson()を指定する必要があります。 – Sammaye

答えて

11

は、そうでない場合はMongoDBは、スクリプトの任意の出力についての静かなままになります。

+0

Haは、実際にprintjson(rs.initiate(config))を実行できることを確認しました。たとえば、これは実際に私が探していたものです。 –

+0

あなたは私に多くの苦痛を救います!ありがとう! – thermz