Partilhar via


Depurar seu aplicativo Java Service Fabric usando o Eclipse

  1. Inicie um cluster de desenvolvimento local seguindo as etapas em Configurando seu ambiente de desenvolvimento do Service Fabric.

  2. Atualize entryPoint.sh do serviço que quer depurar para iniciar o processo de Java com parâmetros de depuração remota. Este arquivo pode ser encontrado no seguinte local: ApplicationName\ServiceNamePkg\Code\entrypoint.sh. A porta 8001 está definida para depuração neste exemplo.

    java -Xdebug -Xrunjdwp:transport=dt_socket,address=8001,server=y,suspend=n -Djava.library.path=$LD_LIBRARY_PATH -jar myapp.jar
    
  3. Atualize o manifesto do aplicativo definindo a contagem de instâncias ou a contagem de réplicas para o serviço que está sendo depurado como 1. Esta definição evita conflitos na porta utilizada para depuração. Por exemplo, para serviços sem estado, defina InstanceCount="1" e para serviços com estado, defina os tamanhos de destino e de réplica mínimos como 1 da seguinte forma: TargetReplicaSetSize="1" MinReplicaSetSize="1".

  4. Implemente a aplicação.

  5. No IDE do Eclipse, selecione Executar -> Configurações de depuração -> Aplicação Java remota e propriedades de conexão de entrada e defina as propriedades da seguinte maneira:

    Host: ipaddress
    Port: 8001
    
  6. Defina pontos de interrupção nos pontos desejados e depure o aplicativo.

Se o aplicativo estiver falhando, você também pode querer habilitar coredumps. Execute ulimit -c em um shell e, se ele retornar 0, os coredumps não estarão habilitados. Para habilitar coredumps ilimitados, execute o seguinte comando: ulimit -c unlimited. Você também pode verificar o status usando o comando ulimit -a. Se você quiser atualizar o caminho de geração do coredump, execute echo '/tmp/core_%e.%p' | sudo tee /proc/sys/kernel/core_pattern.

Próximos passos