Serviço do Windows - java falha, processo de serviço não, ninguém sabe que há uma falha

1

Temos um proxy da Web em execução como um serviço. É um EXE direto, dentro dele é um aplicativo java empacotado.

Às vezes, obtemos isso no arquivo de log que o aplicativo gera e o proxy para de funcionar.

26-11-2013 09:42:48,661 [ServerThread] ERROR pe - Unable to start server java.net.SocketException: Unrecognized Windows Sockets error: 0: JVM_Bind at java.net.PlainSocketImpl.socketBind(Native Method) at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:365) at java.net.ServerSocket.bind(ServerSocket.java:319) at java.net.ServerSocket.(ServerSocket.java:185) at java.net.ServerSocket.(ServerSocket.java:141) at pe.a(Unknown Source) at oe.run(Unknown Source)

Mas o EXE continua funcionando felizmente. Existe alguma maneira geral de fazer o EXE falhar quando esta falha de Java ocorre, para que a capacidade nativa do Windows para reiniciar os serviços com falha entra em ação? Obviamente, se o fornecedor de software tiver que construir isso, não há como você, gentil leitor, saber a resposta. Eu só estou querendo saber se há um sinalizador Java que eu não conheço.

Parece que foi criado com procrun , eu acho. Estou dizendo isso com base na execução de strings.exe no arquivo connector.exe.

Eu sei que uma solução mais completa seria o monitoramento de arquivos de log, com alertas e possíveis remediações automatizadas. Isso não é algo que eu possa fazer hoje, no entanto.

    
por mfinni 26.11.2013 / 17:41

1 resposta

3

Este é um daqueles erros desagradáveis típicos que enfrentamos como administradores de sistema. Os processos estão ativos e em execução enquanto a função / aplicativo está inativa.

Você pode adotar duas abordagens diferentes:

  1. Assista ao arquivo de log e reaja a situações de erro típicas
  2. No servidor, monitore a funcionalidade de serviço e reaja a uma falha

Em ambas as situações, você precisa evitar falsos positivos.

Uma reação apropriada seria uma reinicialização do serviço - que você precisa acionar - que esperamos que funcione na sua situação.

    
por 01.12.2013 / 23:00