Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

É importante para um administrador do sistema acompanhar o crescimento de memória do Appserver, observar os períodos do dia mais críticos de utilização dos usuários e saber assim os momentos mais oportunos para troca de rpo ou reinicialização de serviços, ou até para saber quando é o momento de crescer o ambiente (na horizontal) com a disponibilização de novos slaves no balanceamento de carga.

Os recursos do S.O. disponíveis não são flexíveis a ponto de conseguir logar momentos específicos com "pontos personalizados", ou logar em que programas especificamente do ERP o Appserver estava rodando. Pensando nessa necessidade foi desenvolvimento desenvolvido uma nova funcionalidade interna no Appserver que permite logar em um arquivo essas informações de variação de memória, assim como a chave ServerMemoryInfo, porem em um formato que seja facilmente exportado para um aplicativo de planilha eletrônica e conseguir criar um gráfico dessas informações, tornando mais fácil sua leitura.

Uma outra forma de usar esse recurso é junto com a função ShowInfMem, fazendo com que cada chamada especifica no seu programa possa ser logado no arquivo, podendo realizar facilmente o diagnostico dos pontos a serem logados.

Modo de utilização e

...

casos de

...

uso

É necessário que as seguintes chaves de ini sejam ativadas no arquivo appserver.ini:

...

Nesse caso real extraído em um cliente, onde o Appserver estava com uma alocação ao final do dia em quase 4GB, foi cercado a rotina de processamento (um JOB de processamento de entrada e saída de estoque) com a função ShowInfMem, e o que foi possível observar era foi que o Appserver após a 7 rodada do JOB , passou a ficar muito instável e com altas variações de alocação de objetos entre cada rotina. Com essa informação, houve o trabalho de identificar nos arquivos de console.log o que houve de diferente nesse ponto, sendo possível diagnosticar mais facilmente a partir de que momento começou a ocorrer o problema.

...

DebugThreadUsedMemory, ShowInfMem - ADVPL, ShowInfMem, EnableMemInfoCSV