CONTEÚDO

  1. Visão Geral
  2. Configuração
    1. Tomcat
    2. AppServer
  3. Exemplo de utilização
  4. Anexos

01. VISÃO GERAL

Devido as diversas arquiteturas (Java, Client Progress, AppServer) utilizadas no produto TOTVS - Linha Datasul, a análise de uma inconsistência na execução de rotinas é difícil e improdutiva, ocasionando um atendimento ao cliente moroso e manutenções complicadas em analisar sua causa raiz.

Com o objetivo de sanar estas dificuldades, a partir da release 12.1.34 foi implementada a Rastreabilidade de Logs para facilitar a identificação de fluxos de execução entre as camadas (com a leitura dos arquivos de log) e permitir a centralização de análises dos mesmos, cujo o intuito é aumentar produtividade das análises para todas as equipes. 

02. CONFIGURAÇÃO

Para utilizar esta funcionalidade, é necessário efetuar algumas configurações no ambiente.

TOMCAT

Com o intuito de centralizar a origem da geração do log, foi evoluída a funcionalidade do TOTVS Valve para considerar a Rastreabilidade de Logs, sendo necessário efetuar parametrizações no Tomcat. A seguir será descrito um passo a passo para a configuração:

<Host>
	...
	<Valve className="com.totvs.valve.TotvsLogValve" />
</Host>
...
common.loader="${catalina.base}/lib","${catalina.base}/lib/*.jar","${catalina.home}/lib","${catalina.home}/lib/*.jar","${catalina.home}/lib/totvs-lib/*.jar"
...

commons-logging-1.2.jar
log4j-1.2.12.jar
totvs-fwk-log-<VERSAO>-NFRW-SNAPSHOT.jar
totvs-valve-2.0.jar

APPSERVER

Administrador do AppServer

03. EXEMPLO DE UTILIZAÇÃO

Para a apresentação das informações nos arquivos de log, foram disponibilizados duas classes utilitárias que devem ser inseridas no código fonte de acordo com cada linguagem de programação.

JAVA

Foi implementada a classe TOTVSLog, no qual foi realizada uma especialização da classe java.util.logging.Logger (https://docs.oracle.com/javase/8/docs/api/java/util/logging/Logger.html), já existentes no produto TOTVS - Linha Datasul.

Este classe está disponível no artefato totvs-fwk-log, sendo necessário a inclusão da dependência no arquivo pom.xml

<dependency>
	<groupId>com.totvs.framework</groupId>
	<artifactId>totvs-fwk-log</artifactId>
	<version>${project.version}</version>
	<scope>provided</scope>
</dependency>


Principais métodos




Para visualizar mais informações dos métodos e atributos existentes na classe TOTVSLog, consultar o anexo javadoc-totvs-log.zip

Após descompactar, abrir o arquivo index.html em um navegador de sua preferencia. 







TOTVSLog.threadLocalTotvsLog.get().debug("RASTREABILIDADE LOGS - TESTE!");

FINEST [http-nio-8080-exec-4] com.totvs.framework.log.TOTVSLog.debug a491862e-c754-427e-a276-32a7ad155a0e|0|WEBSERVER|RASTREABILIDADE LOGS - TESTE!


asdas

PROGRESS




Com a utilização da funcionalidade de Rastreabilidade de Logs. todas as mensagens que utilizarem o conceito descrito anteriormente serão apresentadas com a estrutura:

<UID>|<SEQUENCIA|<ORIGEM>|<MENSAGEM>

  • Como o UID é único, mesmo que a execução seja trafegada entre as camadas Java → AppServer, facilitará o rastreamento e a análise da execução de uma funcionalidade;
  • A sequencia é incrementada automaticamente a cada exibição da mensagem de log, com isso facilitará a análise da hierarquia de execução.

04. ANEXOS