Flex Gateway新着情報
Governance新着情報
Monitoring API ManagerMongoDB 用 Anypoint Connector (MongoDB Connector) をトラブルシューティングするには、スローされる一般的な例外メッセージの解釈について理解しておく必要があります。
SSL ログを有効化して、TLS 通信に関連する問題を調査します。
必要な詳細レベルに応じて SSL ログレベルを設定します。
SSL ログの詳細のみを有効化します。
javax.net.debug=ssl
ハンドシェイクの詳細のみを有効化します。(ハンドシェイクプロトコルは、レコードプロトコル上で交換される一連のメッセージです。)
javax.net.debug=ssl:handshake
ハンドシェイクの詳細と SSL の詳細を同時に有効化します。
javax.net.debug=ssl, handshake
すべての詳細とトラフィックデータのダンプを有効化します。
javax.net.debug=all
このオプションは非常に冗長であり、通常の状況では不要です。 |
SSL ログは、HTTPS または他の TLS 接続のパフォーマンスに影響します。SSL ログは、特定の問題のトラブルシューティングを行うためにのみ有効化し、長期間有効にしないでください。SSL ログでは大量のログメッセージが生成されるため、有効にしたまま放置しておくと、ログファイルが溢れる可能性があります。 |
SSL ログを有効化する手順は、次のとおりです。
アプリケーションのランタイム設定でデバッグパラメーターを引数として設定します。
Studio で、プロジェクトを右クリックし、[Run (実行)] > [Run Configurations (実行設定)] を選択します。
[Arguments (引数)] タブに移動して、[VM arguments (VM 引数)] セクションで -M-Djavax.net.debug=ssl
を追加します。
冗長例外ログを有効化して、デフォルトの切り捨てられた出力ではなくエラーの完全なスタック追跡を表示します。
Studio で、プロジェクトを右クリックし、[Run (実行)] > [Run Configurations (実行設定)] を選択します。
[Arguments (引数)] タブに移動して、[VM arguments (VM 引数)] セクションで引数を付加して mule.verbose.exceptions
プロパティを追加します。次に例を示します。
-XX:PermSize=128M -XX:MaxPermSize=256M -Dmule.verbose.exceptions=true
アプリケーションと MongoDB Connector のやりとりが失敗する理由の理解を深めるには、コネクタの冗長ログを一時的に有効にします。
Mule アプリケーションのパフォーマンスに影響する可能性があるため、トラブルシューティングが完了したら、必ず拡張された冗長性を無効にしてください。
設定ファイルで冗長ログを有効にする手順は、次のとおりです。
Anypoint Studio にアクセスし、[Package Explorer] ビューに移動します。
アプリケーションのプロジェクト名を開きます。
src/main/resources
フォルダーを開きます。
フォルダー内の log4j2.xml
ファイルを開きます。
<Loggers>
タグ内に <AsyncLogger>
タグを追加します。
<Loggers>
...
<AsyncLogger name="com.mulesoft.connectors.mongodb" level="DEBUG"/>
...
</Loggers>
xml
アプリケーションの変更を保存します。
Package Explorer でプロジェクト名をクリックし、[Run (実行)] > [Run As (別のユーザーとして実行)] > [Mule Application (Mule アプリケーション)] をクリックします。
スローされる一般的な例外メッセージとその解釈方法のリストを次に示します。
MONGO:CONNECTIVITY
Either a connection could not be established or there is a connectivity error. (接続を確立できなかったか、接続エラーがあります。)
MONGO:CONSISTENCY_ERROR
The data is not consistent because the client cannot find a read after performing a write. (クライアントが書き込みを実行した後に読み取りを見つけることができないため、データに一貫性がありません。)
MONGO:DUPLICATE_ERROR
There is a duplicate key. (重複するキーがあります。)
MONGO:INVALID_INPUT
The provided input data for an operation is not valid. (操作で指定された入力データが無効です。)
MONGO:NOT_FOUND
The server could not find the requested resource. (サーバーは要求されたリソースを見つけることができませんでした。)
MONGO:PERMISSIONS_DENIED
A permission error occurred while accessing a collection in a database. (データベースのコレクションへのアクセス中に権限エラーが発生しました。)
MONGO:RETRY_EXHAUSTED
The maximum number of retries for the operation is reached. (操作の最大再試行回数に達しました。)
MONGO:TIMEOUT
A specific request takes longer than the configuration timeout values. (特定の要求に設定タイムアウト値よりも長い時間がかかっています。)