Tempo aproximado para leitura: 00:05:30 min
Dúvida
Como se dá o comportamento da tabela GCRITICALLOG?
Ambiente
Framework - Linha RM - Frame - A partir da versão 12.1.10
Solução
A análise da tabela GCRITICALLOG busca facilitar a identificação de erros críticos como por exemplo perdas momentâneas de conectividade com o banco de dados, timeout de banco de dados e falha ao registrar algum host entre outros.
O log exibe as seguintes informações: usuário conectado, nome da máquina, aplicação, informações do erro, stack trace e data do ocorrido.
Criamos algumas regras para classificar um erro como crítico e alimentarmos a tabela GCRITICALLOG para posterior análise, são elas:
1- Regra com mecanismo de identificar quando o host é interrompido inesperadamente. Nesta regra quando o host é reiniciado verificamos se o mesmo seguiu o fluxo de desligamento por completo, e caso negativo geramos um registro na GCRITICALLOG com seu respectivo arquivo de dump.
2- Regra com mecanismo de identificar queries lentas sendo executadas, sejam elas, consultas SQL ou queries de produto. Nesta regra verificamos queries que levam mais de 2 minutos para executar e geramos um registro na GCRITICALLOG.
3- Regra para verificar estouro de pool de conexões com o banco de dados. Nesta regra temos uma lógica de programação para identificar qual foi o processo vilão que estourou o pool de conexões, pois na maioria dos caso não é o processo que o erro foi apresentado que é o causador do problema, com isso geramos um registro na GCRITICALLOG.
4- Regra para identificar erros no Job Server. Nesta regra temos pontos estratégicos no fonte mapeado pelo know-how de erros para identificar configurações incorretas de afinidade, de usuários do Alias, e desserialização da classe de processo, etc. Para cada erro é gerado um registro na GCRITICALLOG.
5- Regra para identificar erros sem os devidos tratamentos. Nesta regra capturamos exceções levantadas na aplicação e geramos registros na GCRITCALLOG.
6- Regra para calcular a recorrência. Nesta regra identificamos quais erros possuem as mesmas características e incrementamos a recorrência do mesmo.
7- Regra para identificar o produto. Nesta regra avaliamos o stack trace do erro na ordem da execução e o primeiro produto encontrado é definido como o responsável pelo erro.
Demais regras podem e serão adicionadas para que cada vez mais consigamos identificar de forma rápida erros críticos.
Observação:
Auto-expurgo
O Critical Log faz expurgo dos dados à cada 2 dias. Os registros, datados em 15 dias anteriores à data de expurgo, são excluídos da tabela GCRITICALLOG.
0 Comentários