Service Fabric 開発環境のセットアップの手順に従って、ローカル開発クラスターを起動します。
デバッグするサービスの entryPoint.sh を更新して、リモート デバッグ パラメーターを使用して Java プロセスを開始します。 このファイルは、次の場所にあります:
ApplicationName\ServiceNamePkg\Code\entrypoint.sh。 この例では、デバッグ用にポート 8001 が設定されています。java -Xdebug -Xrunjdwp:transport=dt_socket,address=8001,server=y,suspend=n -Djava.library.path=$LD_LIBRARY_PATH -jar myapp.jarデバッグ対象のサービスのインスタンス数またはレプリカ数を 1 に設定して、アプリケーション マニフェストを更新します。 この設定により、デバッグに使用されるポートの競合が回避されます。 たとえば、ステートレス サービスの場合は、
InstanceCount="1"を設定し、ステートフル サービスの場合、ターゲットと最小レプリカ セットのサイズを 1 に設定します。次のようにTargetReplicaSetSize="1" MinReplicaSetSize="1"。アプリケーションをデプロイします。
Eclipse IDE で、[ Run -> Debug Configurations -> Remote Java Application and input connection properties ] を選択し、プロパティを次のように設定します。
Host: ipaddress Port: 8001必要なポイントにブレークポイントを設定し、アプリケーションをデバッグします。
アプリケーションがクラッシュしている場合は、コアダンプを有効にすることもできます。 シェルで ulimit -c を実行し、0 を返した場合、コアダンプは有効になりません。 無制限のコアダンプを有効にするには、次のコマンドを実行します: ulimit -c unlimited。 コマンド ulimit -aを使用して状態を確認することもできます。 コアダンプ生成パスを更新する場合は、 echo '/tmp/core_%e.%p' | sudo tee /proc/sys/kernel/core_pattern実行します。