Docs Menu
Docs Home
/
MongoDB Cluster-to-Cluster Sync
/

ログ記録

項目一覧

  • 目的地
  • 標準出力
  • ファイルへのログ
  • 冗長
  • 形式

mongosyncは、コレクションやインデックスのコピーなどのエントリ、変更ストリーム イベント、API 呼び出しなど、イベントの実行中のログを保持します。

mongosync はログ メッセージを stdout または ファイルに書き込むことができます。

デフォルトでは、 mongosyncはログ メッセージを stdout に出力します。

$ mongosync --config /etc/mongosync.conf

出力例:

{"level":"info","mongosyncID":"shard02","verbosity":"INFO","id":"shard02","port":27301,"time":"2022-06-21T11:15:33-04:00","message":"Mongosync Options"}
{"level":"info","mongosyncID":"shard02","time":"2022-06-21T11:15:33-04:00","message":"Initialized client0 with URI: mongodb://192.0.2.1:27130 and client1 with URI: mongodb://192.0.2.2:27140."}
{"level":"info","mongosyncID":"shard02","time":"2022-06-21T11:15:33-04:00","message":"Preflight checks completed."}
{"level":"info","mongosyncID":"shard02","time":"2022-06-21T11:15:33-04:00","message":"Launch replication thread"}

ログ メッセージを ファイルに出力するには、 --logPathオプションを使用してmongosyncを起動するか、構成ファイルでlogPath設定を設定します。

ファイルにログを記録する際、 mongosyncは構成された ディレクトリ内のファイルにログを書き込みます。 ディレクトリが存在しない場合は作成されます。 ディレクトリにmongosync.logファイルがすでに存在する場合、 mongosyncはログファイルをローテーションして古いログを保持し、新しいファイルを作成します。

$ ls /var/log/mongosync

以下に例を挙げます。

mongosync-2022-06-17T16-27-58.187.log mongosync.log
mongosync-2022-06-21T13-31-42.668.log

現在アクティブなログファイルはmongosync.logです。 その他のファイルは、 mongosyncがローテーションした古いログです。

--logPathオプションを使用してmongosyncを起動すると、ログファイルをローテーションするためにUSR1シグナルをmongosyncプロセスに送信できます。

kill -s USR1 $mongosync_pid

$mongosync_pid は、 mongosyncプロセス ID です。

mongosync は、 mongosyncの出力するログ メッセージのレベルを増減するためにユーザー定義の冗長度をサポートします。

冗長レベルは、コマンドラインから--verbosityオプションを使用するか、構成ファイルのverbosity設定を使用して設定できます。

mongosync は構造化された JSON 形式でログ メッセージを出力します。 各ログ メッセージは、そのエントリのキーと値のペアを保持するドキュメントです。 キーはログ メッセージ要素にラベルを付け、値は報告されたイベントを示します。

以下に例を挙げます。

{
"level": "info",
"mongosyncID": "shard01",
"componentName": "Change Event Application",
"time": "2022-06-21T09:31:42-04:00",
"message": "Starting change stream reader."
}

ログ メッセージを表示するには、ログディレクトリにあるmongosync.logファイルを確認します。 ログのフォーマットは、その内容をjqまたは同様のコマンドにパイプすることで可能です。

$ cat /var/log/mongosync/mongosync.log | jq

出力例:

{
"level": "info",
"mongosyncID": "shard02",
"verbosity": "INFO",
"id": "shard02",
"port":27301,
"time": "2022-06-21T11:15:33-04:00",
"message": "Mongosync Options"
}
{
"level": "info",
"mongosyncID": "shard02",
"time": "2022-06-21T11:15:33-04:00",
"message": "Initialized client0 with URI: mongodb://192.0.2.1:27130 and client1 with URI: mongodb://192.0.2.2:27140."
}
{
"level": "info",
"mongosyncID": "shard02",
"time": "2022-06-21T11:15:33-04:00",
"message": "Preflight checks completed."
}
{
"level": "info",
"mongosyncID": "shard02",
"time": "2022-06-21T11:15:33-04:00",
"message": "Launch replication thread"
}

戻る

制限