ApsaraMQ for RocketMQ SDK は、ランタイム時のイベントおよび例外を記録するクライアントログを生成します。これらのログを活用して、クライアントの操作中に発生した問題のトラブルシューティングを行ってください。
デフォルトのログファイルパス
以下の表に、各 SDK 言語におけるデフォルトのログファイルパスを示します。{$HOME} は、起動したアプリケーションのルートディレクトリです。
| 言語 | デフォルトのパス |
|---|---|
| Java | {$HOME}/logs/rocketmq/rocketmq-client.log |
| C++ | {$HOME}/logs/rocketmq/client.log |
| C# | {$HOME}/logs/rocketmq/rocketmq-client.log |
| Go | {$HOME}/logs/rocketmq/rocketmq_client_go.log |
ログパラメーター
クライアント起動後、デフォルト設定に基づいてログファイルが作成されます。Java および Go の SDK では、ログパラメーターのカスタマイズが可能です。一方、C++ および C# の SDK では、ログ構成のカスタマイズはサポートされていません。
Java
すべての Java ログパラメーターは、JVM システムプロパティ(-D フラグ)を介して設定します。
| パラメーター | 説明 | デフォルト | 有効値 |
|---|---|---|---|
rocketmq.log.level | ログの詳細レベル。 | INFO | ERROR、WARN、INFO、DEBUG |
rocketmq.log.root | ログ出力のルートディレクトリ。 | {$HOME}/logs/rocketmq | 書き込み権限を持つ任意のローカルディレクトリ。 |
rocketmq.log.file.maxIndex | 保持するログファイルの最大数。各ログファイルの最大サイズは固定で 64 MB です。 | 10 | 1~100。この範囲外または無効な形式の値は、デフォルト値にフォールバックします。 |
指定したログディレクトリに対して、アプリケーションプロセスが書き込み権限を持っていることを確認してください。そうでない場合、ログが出力されません。
Go
Go のログパラメーターは、環境変数を介して設定します。
| パラメーター | 説明 | デフォルト | 有効値 |
|---|---|---|---|
rocketmq.client.logLevel | ログの詳細レベル。 | INFO | ERROR、WARN、INFO、DEBUG |
rocketmq.client.logRoot | ログ出力のルートディレクトリ。 | {$HOME}/logs/rocketmq | 書き込み権限を持つ任意のローカルディレクトリ。 |
rocketmq.client.logFileName | ログファイル名。 | rocketmq_client_go.log | 有効なファイル名。 |
rocketmq.log.file.maxIndex | 保持するログファイルの最大数。 | 10 | 1~100 |
rocketmq.client.logFileMaxSize | 各ログファイルの最大サイズ。 | 1 GB | — |
指定したログディレクトリに対して、アプリケーションプロセスが書き込み権限を持っていることを確認してください。そうでない場合、ログが出力されません。
ログの構成方法
Java
起動スクリプトまたは IDE の VM オプションで、-D フラグを指定してログパラメーターを設定します。
ログレベルを INFO に設定する場合:
java -Drocketmq.log.level=INFO -jar foobar.jarカスタムログディレクトリを指定し、ログファイルの保持数を増やす場合:
java -Drocketmq.log.level=WARN \
-Drocketmq.log.root=/var/log/myapp/rocketmq \
-Drocketmq.log.file.maxIndex=20 \
-jar foobar.jarGo
Go SDK では、以下の 2 種類の構成方法がサポートされています。
静的構成 — クライアント起動前に環境変数を設定します。
動的構成 — コード内で環境変数を設定し、
ResetLogger()を呼び出して、ランタイム時に設定を適用します。
動的構成(ランタイム時に変更):
os.Setenv("rocketmq.client.logLevel", "WARN")
rmq_client.ResetLogger()