Share via


Fouten opsporen in uw Java Service Fabric-toepassing met behulp van Eclipse

  1. Start een lokaal ontwikkelcluster door de stappen in Uw Service Fabric-ontwikkelomgeving instellen te volgen.

  2. Werk entryPoint.sh bij van de service waar u fouten wilt opsporen, zodat dit het Java-proces met de parameters voor foutopsporing op afstand begint. Dit bestand is te vinden op de volgende locatie: ApplicationName\ServiceNamePkg\Code\entrypoint.sh. Poort 8001 is in dit voorbeeld voor foutopsporing ingesteld.

    java -Xdebug -Xrunjdwp:transport=dt_socket,address=8001,server=y,suspend=n -Djava.library.path=$LD_LIBRARY_PATH -jar myapp.jar
    
  3. Werk het toepassingsmanifest bij door het aantal exemplaren of het aantal replica's voor de service die wordt opgespoord in te stellen op 1. Deze instelling voorkomt conflicten voor de poort die wordt gebruikt voor het opsporen van fouten. Stel bijvoorbeeld voor stateless services InstanceCount="1" in en stel voor stateful services de doel- en min-replicasetgrootten als volgt in op 1: TargetReplicaSetSize="1" MinReplicaSetSize="1".

  4. De toepassing implementeren.

  5. Selecteer in de Eclipse IDE Uitvoeren -> Foutopsporingsconfiguraties -> Externe Java-toepassing en invoerverbindingseigenschappen en stel de eigenschappen als volgt in:

    Host: ipaddress
    Port: 8001
    
  6. Stel onderbrekingspunten in op de gewenste punten en foutopsporing in de toepassing.

Als de toepassing vastloopt, kunt u ook coredumps inschakelen. Voer uit ulimit -c in een shell en als deze 0 retourneert, worden coredumps niet ingeschakeld. Als u een onbeperkt aantal coredumps wilt inschakelen, voert u de volgende opdracht uit: ulimit -c unlimited. U kunt de status ook controleren met behulp van de opdracht ulimit -a. Als u het pad voor het genereren van coredump wilt bijwerken, voert u uit echo '/tmp/core_%e.%p' | sudo tee /proc/sys/kernel/core_pattern.

Volgende stappen