クライアントログは記録され、ApsaraMQ for RocketMQクライアントの実行中に発生する例外のトラブルシューティングに役立ちます。 このトピックでは、ApsaraMQ for RocketMQ 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 |
ログパラメーター
クライアントの起動後、デフォルトのシステム構成に基づいてログファイルが生成されます。 カスタムアイテムを設定し、ログパラメータを変更することもできます。
C ++ およびC# のクライアントログのカスタムアイテムを構成することはできません。
Java
パラメーター | 説明 | 有効値 |
rocketmq.log.level | ログレベル。 |
デフォルト値: INFO。 |
rocketmq.log.root | ログのルートディレクトリ。 | デフォルト値: {$HOME}/logs/rocketmq。 {$HOME} は、開始したJavaプロセスのルートディレクトリです。 このパラメーターをローカルディレクトリに設定できます。 説明 アプリケーションプロセスにパスに対する書き込み権限が付与されていることを確認します。 そうしないと、ログを印刷できません。 |
rocketmq.log.file.maxIndex | 保持されるログファイルの最大数。 | Valid values: 1 to 100. デフォルト値は 10 です。 指定された値がこの範囲内でないか、または無効な形式である場合、システムによって提供されるデフォルト値が使用されます。 ログファイルの最大サイズは64 MBで、変更できません。 |
Go
パラメーター | 説明 | 有効値 |
rocketmq.client.logLevel | ログレベル。 |
デフォルト値: INFO。 |
rocketmq.client.logRoot | ログのルートディレクトリ。 | デフォルト値: {$HOME}/logs/rocketmq。 {$HOME} は、開始したGoプロセスのルートディレクトリです。 このパラメーターをローカルディレクトリに設定できます。 説明 アプリケーションプロセスにパスに対する書き込み権限が付与されていることを確認します。 そうしないと、ログを印刷できません。 |
rocketmq.client.logFileName | ログファイルの名前。 | デフォルト値: rocketmq_client_go.log |
rocketmq.log.file.maxIndex | 保持されるログファイルの最大数。 | Valid values: 1 to 100. デフォルト値は 10 です。 |
rocketmq.client.logFileMaxSize | ログファイルの最大サイズ。 | デフォルト値: 1 GB。 |
設定例
システムパラメーターを変更して、SDK for JavaおよびSDK for Goのカスタム項目を設定できます。 ログパラメーターの詳細については、「ログパラメーター」をご参照ください。
SDK for Javaのサンプル構成
統合開発環境 (IDE) のスタートアップスクリプトまたは仮想マシン (VM) オプションで、-Dコマンドを実行してクライアントログを設定します。
次のサンプルコードでは、rocketmq.log.levelパラメーターがINFOに設定されている例を示します。
java -Drocketmq.log.level=INFO -jar foobar.jar
Go用SDKのサンプル設定
静的設定: 環境変数でログパラメーターを設定し、Goのクライアントを起動します。
動的設定: コードでログパラメーターを設定し、
ResetLogger()
操作を呼び出します。次のサンプルコードは、rocketmq.log.levelパラメーターがWARN:
os.Setenv("rocketmq.client.logLevel", "WARN") rmq_client.ResetLogger()