Em algumas situações, as informações de rastreio geradas pelos provedores da Java™ Persistence API (JPA) enviados com o WebSphere Application
Server podem não ser adequadas para diagnosticar um problema. Nessas situações, um mecanismo de rastreio estendido pode ser ativado para
gerar informações adicionais no arquivo de rastreio. O rastreio estendido pode funcionar apenas com os
provedores de persistência fornecidos pela IBM. Isso não funciona com provedores de terceiros,
incluindo versões alternativas do OpenJPA incluído em pacote configurável em um
aplicativo ou configurado como uma biblioteca compartilhada.
Sobre Esta Tarefa
Nota: Esse tópico faz referência a um ou mais arquivos de log do servidor de aplicativos. Como uma recomendação alternativa, é possível configurar o servidor para usar a infraestrutura de log e rastreio do High Performance Extensible Logging (HPEL)
em vez de usar os arquivos SystemOut.log , SystemErr.log, trace.log e activity.log em sistemas distribuídos e IBM® i. Também é possível usar HPEL em conjunção com os recursos de criação de log z/OS nativos. Se você estiver usando HPEL, será possível acessar todas as informações de log e rastreio usando a ferramenta de linha de comandos LogViewer a partir do diretório bin do perfil do servidor. Consulte as informações sobre a utilização do HPEL para resolução de problemas dos aplicativos
para obter mais informações sobre o uso do HPEL.
O rastreamento JPA aprimorado
para um aplicativo em execução no WebSphere Application
Server pode ser ativado com algumas etapas simples usando o script wsadmin ou o console
administrativo. As etapas nesse tópico descrevem como configurar o rastreio aprimorado usando o console de administração. Esse processo altera as configurações do servidor, portanto, é recomendável
fazer backup da sua configuração do servidor antes de continuar.
Procedimento
- Ativar o agente de rastreio. Um agente de rastreio deve ser ativado por servidor de aplicativos passando um argumento para a Java Virtual Machine (JVM) do servidor. O agente de rastreio pode ser ativado usando o console administrativo seguindo essas etapas:
- Na área de janela de navegação, selecione Servidores.
Selecione Servidores de Aplicativos.
- Na área de janela da lista de servidores, selecione o servidor que precisa
do rastreio de JPA avançado. Se vários servidores fornecerem a funcionalidade JPA para seu aplicativo, essas etapas deverão ser seguidas para cada
servidor.
- No título Infra-estrutura do Servidor, selecione Gerenciamento
Java e de Processo. Selecione Definição de Processo.
- No título Propriedades Adicionais, selecione Java Virtual
Machine.
- Inclua o seguinte argumento no campo Argumentos JVM genéricos, em que <app_server_root> é o caminho completo do diretório de instalação do servidor de aplicativos.
Assegure-se de utilizar o caractere separador de caminhos apropriado para
o seu sistema operacional.
-javaagent:<app_server_root>/optionalLibraries/IBM/wsjpa/wsjpatrace.jar
Importante: O uso de argumentos JVM genéricos no console administrativo atualmente não suporta espaços dentro de argumentos. Se espaços forem especificados nesse campo, o servidor pode falhar ao iniciar. Isso é mais provável de ocorrer em um ambiente Windows porque o caminho de instalação padrão é C:\Program Files\IBM\WebSphere\AppServer, que contém um espaço no caminho. A solução alternativa para esse problema em um ambiente Windows, é usar um nome do caminho abreviado para o <app_server_root>.
Por
exemplo, C:\Progra~1\IBM\WebSphere|AppServer.
Em sistemas do tipo UNIX, um link simbólico pode ser usado para eliminar espaços no <app_server_root>.
Por exemplo, se um caminho de instalação do WebSphere Application
Server for /opt/app_server_root/AppServer,
um link simbólico poderá ser criado em /opt a partir do <app_server_root> para
AppServerRoot, eliminando o espaço. Depois, especifique /opt/AppServerRoot/AppServer como o <app_server_root> no argumento JVM genérico.
- Ativar componentes de rastreio adicionais e ajustar as opções do arquivo de rastreio. Essa etapa pode ser concluída com o script wsadmin ou com o console
administrativo. Essas etapas descrevem como ajustar as configurações de arquivo
de rastreio e permitem que os componentes usem o console de administração:
- Na área de janela de navegação, selecione Resolução de Problema.
Clique em Logs e Rastreio.
- Selecione o nome do servidor a ser rastreado.
- Em Propriedades Gerais, selecione Rastreio de
Diagnóstico.
- Certifique-se de que Ativar
Log esteja marcado e, opcionalmente,
aumente o Tamanho Máximo de Arquivo e Número Máximo de
Arquivos Históricos. Dependendo do número de categorias de rastreio adicionais e dos níveis de rastreio escolhidos, o arquivo de rastreio pode se tornar grande.
- No título Propriedades Adicionais, selecione Alterar Níveis de
Detalhe do Log.
- Ative várias categorias de rastreio estendido especificando uma ou mais categorias de rastreio a partir da seguinte tabela. Uma cadeia de rastreio de exemplo é:
*=info:JPA=all:openjpa.*=finer:openjpa.kernel=finest.
O rastreio estendido rastreia nos níveis de rastreio
FINER ou FINEST. O nível FINEST inclui mais detalhes do que FINER. Quando ALL for especificado, o nível estendido rastreará no nível FINEST.
Tabela 1. Categorias de Rastreio. Faça backup da configuração do seu servidor antes de ativar o rastreio aprimorado.Category |
Níveis de rastreio relevantes |
Description |
JPA |
OFF, ALL, FINER, FINEST |
Inclui rastreio estendido no grupo de rastreio JPA. |
openjpa.* |
OFF, ALL, FINER, FINEST |
Rastreio OpenJPA normal, além do rastreio estendido para todas as categorias em OpenJPA quando o rastreio estendido é ativado. |
openjpa.xtrace.* |
OFF, ALL, FINER, FINEST |
Rastreio estendido para todas as categorias do OpenJPA quando o rastreio estendido estiver ativado. |
openjpa.xtrace.Jdbc |
OFF, ALL, FINER, FINEST |
Rastreio estendido para classes JDBC do OpenJPA quando o rastreio estendido estiver ativado. |
openjpa.xtrace.Lib |
OFF, ALL, FINER, FINEST |
Rastreio estendido para classes de biblioteca do OpenJPA quando o rastreio estendido estiver ativado. |
openjpa.xtrace.Persist |
OFF, ALL, FINER, FINEST |
Rastreio estendido para classes de persistência do OpenJPA quando o rastreio estendido estiver ativado. |
openjpa.xtrace.Kernel |
OFF, ALL, FINER, FINEST |
Rastreio estendido para classes de kernel do OpenJPA quando o rastreio estendido estiver ativado. |
openjpa.xtrace.General |
OFF, ALL, FINER, FINEST |
Rastreio estendido para classes OpenJPA não incluídas nas categorias
JDBC, Lib, Persist ou Kernel quando o rastreio estendido está ativado. |
openjpa.xtrace.ApiSpi |
OFF, ALL, FINER, FINEST |
Rastreio estendido para interfaces API/SPI públicas definidas para WsJPA, OpenJPA, e JPA quando o rastreio estendido está ativado. |
- Salve a configuração do servidor de aplicativos e reinicie o servidor de aplicativos.
Resultados
Após reiniciar o servidor de aplicativos, as novas configurações de rastreio são usadas.
O que Fazer Depois
Evitar Problemas: O rastreamento pode reduzir significativamente o desempenho e deve ser desativado quando não estiver em uso. Para desativar o rastreio, remova o argumento JVM Genérico e todos os níveis de detalhes do rastreio incluídos para o rastreamento avançado.
gotcha