Ir para conteúdo
  • Cadastre-se

dev botao

Servidor Linux CRASHANDO


Ver Solução Respondido por Messias Bittencourt,

Recommended Posts

  • Membros Pro
Postado

Bom dia,

 

Temos um servidor linux funcionando de acordo com o tutorial que vocês tem em video, deixamos ele ligado e vez por outra ele da o retorno abaixo. Não tem exatamente um motivo certo, ele só morre.

 

Conseguem nos ajudar? (Abaixo o log que ele nos entrega)

 

Esse servidor vai se tornar o produtivo em breve e estamos com receio por causa da sua instabilidade.

 

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x0000000000000035, pid=1766, tid=75439
#
# JRE version: OpenJDK Runtime Environment (11.0.25+9) (build 11.0.25+9-post-Ubuntu-1ubuntu122.04)
# Java VM: OpenJDK 64-Bit Server VM (11.0.25+9-post-Ubuntu-1ubuntu122.04, mixed mode, sharing, tiered, compressed oops, g1 gc, linux-amd64)
# Problematic frame:
# C  0x0000000000000035
#
# Core dump will be written. Default location: Core dumps may be processed with "/usr/share/apport/apport -p%p -s%s -c%c -d%d -P%P -u%u -g%g -- %E" (or dumping to /home/ubuntu/core.1766)
#
# An error report file with more information is saved as:
# /home/ubuntu/hs_err_pid1766.log
#
# If you would like to submit a bug report, please visit:
#   https://bugs.launchpad.net/ubuntu/+source/openjdk-lts
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
 

  • Membros Pro
Postado
42 minutos atrás, Messias Bittencourt disse:

Bom dia,

 

Temos um servidor linux funcionando de acordo com o tutorial que vocês tem em video, deixamos ele ligado e vez por outra ele da o retorno abaixo. Não tem exatamente um motivo certo, ele só morre.

 

Conseguem nos ajudar? (Abaixo o log que ele nos entrega)

 

Esse servidor vai se tornar o produtivo em breve e estamos com receio por causa da sua instabilidade.

 

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x0000000000000035, pid=1766, tid=75439
#
# JRE version: OpenJDK Runtime Environment (11.0.25+9) (build 11.0.25+9-post-Ubuntu-1ubuntu122.04)
# Java VM: OpenJDK 64-Bit Server VM (11.0.25+9-post-Ubuntu-1ubuntu122.04, mixed mode, sharing, tiered, compressed oops, g1 gc, linux-amd64)
# Problematic frame:
# C  0x0000000000000035
#
# Core dump will be written. Default location: Core dumps may be processed with "/usr/share/apport/apport -p%p -s%s -c%c -d%d -P%P -u%u -g%g -- %E" (or dumping to /home/ubuntu/core.1766)
#
# An error report file with more information is saved as:
# /home/ubuntu/hs_err_pid1766.log
#
# If you would like to submit a bug report, please visit:
#   https://bugs.launchpad.net/ubuntu/+source/openjdk-lts
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
 

Segue log completohs_err_pid1766.log

 

  • Consultores
Postado

Bom dia,

Por favor, está usando a lib MT ou ST ?

Precisa se certificar que o código que consome (java) a lib é a versão correta.

Sugiro que ao inicializar use [Memory] no lugar de  eArquivoConfig

 

BOLETO_Inicializar("[Memory]\n[Principal]\nLogPath=/tmp\nLogNivel=4","") ;///para Single Thread


BOLETO_Inicializar(handle,"[Memory]\n[Principal]\nLogPath=/tmp\nLogNivel=4","");// para Multi Thread

Depois, verifique  o diretório para /tmp e nos envie o log

  • Consultores
Postado

O [memory] permite passar um arquivo ini como uma string, por exemplo:

 

 

 String cepConfigValues =
                "[Principal]\n" +
                        "TipoResposta=1\n" +
                        "CodificacaoResposta=0\n" +
                        "LogNivel=4\n" +
                        "LogPath=" + appDir.getAbsolutePath() + "\n\n" +
                        "[CEP]\n" +
                        "WebService=" + WSVIACEP.ordinal() + "\n" +
                        "ChaveAcesso=\n" +
                        "Usuario=\n" +
                        "Senha=\n" +
                        "PesquisarIBGE=0\n" +
                        "SSLType=5\n";

      

 

  • Membros Pro
Postado
18 minutos atrás, danieloliveirasouza disse:

O [memory] permite passar um arquivo ini como uma string, por exemplo:

 

 

 String cepConfigValues =
                "[Principal]\n" +
                        "TipoResposta=1\n" +
                        "CodificacaoResposta=0\n" +
                        "LogNivel=4\n" +
                        "LogPath=" + appDir.getAbsolutePath() + "\n\n" +
                        "[CEP]\n" +
                        "WebService=" + WSVIACEP.ordinal() + "\n" +
                        "ChaveAcesso=\n" +
                        "Usuario=\n" +
                        "Senha=\n" +
                        "PesquisarIBGE=0\n" +
                        "SSLType=5\n";

      

 

Ahhh rapaz... Entendido e perfeito.
Ao invés do endereço do ini que foi gerado no disco eu gero a String conforme exemplo acima e passo no mesmo ponto.
Vou testar aqui e te passo o resultado.

Valeu

  • Consultores
Postado
3 horas atrás, Messias Bittencourt disse:

Aproveitando a oportunidade @danieloliveirasouza e @antonio.carlos.
Aplicação java 11 + linux: Existe versão / configuração do linux já testada e que vcs recomendariam?
Qual linux vcs acham mais confiável para o uso do ACBr? Existe mais algo relacionado ao ambiente que vcs já tenham passado e que eu possa utilizar para melhorar aqui?

Além da orientação do nosso consultor @danieloliveirasouza
Quando estiver usando linux e for utilizar algum DFe (Documento Fiscal Eletronico), sendo ele NFe, CTe, MDFe e etc.. lembre-se sempre de instalar as dlls de dependências em sua máquina linux.

  • Membros Pro
Postado

Bom dia Senhores e muito obrigado pelas orientações.

Estou utilizando agora a seguinte combinação para o boleto:
 - Spring boot (sts);
 - Java 21;
 - Server: Ubuntu 24.04.1 LTS;
 - lib ACBr 64 MultiThread Linux versão 1.2.1.334;

  • Membros Pro
Postado
5 minutos atrás, Messias Bittencourt disse:

Bom dia Senhores e muito obrigado pelas orientações.

Estou utilizando agora a seguinte combinação para o boleto:
 - Spring boot (sts);
 - Java 21;
 - Server: Ubuntu 24.04.1 LTS;
 - nova versão da lib ACBr 64 MultiThread Linux (versão 1.2.1.334);

Não está mais ocorrendo o CRASH com a lib MT que ocorria anteriormente.
Apenas um detalhe com esta nova versão da lib boleto. Segue abaixo relato com esta nova configuração acima citada:
 - Teste do listarBancos: Funcionou 100%;
 - Teste de Geração de boletos Banco do Brasil ambiente de Homologação: Funcionou 100%;
 - Teste de Consulta de boletos no SICOOB ambiente de Produção: Funcionou 100%;
 - Teste de Geração de boletos SICOOB ambiente de Produção: Na requisição está sendo enviada a "dataPrimeiroDesconto" : "1899-12-30T00:00:00-03:00". Mesmo esta informação não constando no .ini que contém a tag [Titulo1], onde DataDesconto está vazio. Encontrei esta Data de 1899, mas não informada por mim, dentro da tag [BoletoDiretorioConfig] (eu nem trabalho esta tag no meu código). E desta forma cai em uma validação do banco que exige informarmos um valor para este "desconto"...

Teria como verificar por favor o ocorrido? Envio anexo os .ini e .log
Vcs ver no no log a sequencia de execuções: listarBancos (sucesso), consultaSicoobProducao (sucesso) e geracaoBoletoSicoobProducao (falha da dataPrimeiroDesconto).

Mais uma vez muito obrigado.
Cedente_TitulosTfl.iniacbrlibTfl.iniACBrLibBoleto-20241222.logLogWS-Boleto-Sicoob.log

  • Consultores
Postado

Boa noite,

A data "30/12/1899" é uma data usada quando a data é vazia, possivelmente alguma ocorrencia de conversão na Lib.

Criada a TK-6419 para avaliação.

Assim que tivermos um posicionamento será informado aqui no tópico.

Consultor SAC ACBr

Alexandre de Paula
Ajude o Projeto ACBr crescer - Assine o SAC                    

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  ícone Discórdia Discord   

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

 

 

  • Consultores
Postado
21 horas atrás, Messias Bittencourt disse:

 - Teste de Geração de boletos SICOOB ambiente de Produção: Na requisição está sendo enviada a "dataPrimeiroDesconto" : "1899-12-30T00:00:00-03:00". Mesmo esta informação não constando no .ini que contém a tag [Titulo1], onde DataDesconto está vazio. Encontrei esta Data de 1899, mas não informada por mim, dentro da tag [BoletoDiretorioConfig] (eu nem trabalho esta tag no meu código). E desta forma cai em uma validação do banco que exige informarmos um valor para este "desconto"...

Só para confirmação @Messias Bittencourt você não deseja informar o desconto nem a data correto?
Verifique os campos TipoDesconto e TipoDesconto2, no seu INI eles estão com valor 1

 

image.png

  • Curtir 1
Consultor SAC ACBr

Alexandre de Paula
Ajude o Projeto ACBr crescer - Assine o SAC                    

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  ícone Discórdia Discord   

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

 

 

  • Consultores
Postado

Obrigado por reportar.

Fechando. Para novas dúvidas, criar um novo tópico.

Consultor SAC ACBr

Alexandre de Paula
Ajude o Projeto ACBr crescer - Assine o SAC                    

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  ícone Discórdia Discord   

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

 

 

Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...
The popup will be closed in 10 segundos...