Geração de dumps (thread e memory) no WebSphere 6.x
Segue uma dica de como extrair um dump de threads e memória do WebSphere, funciona tanto em unix como em windows.
Acessar a interface administrativa e configurar os parametros
Navegação
Servers -> Application Servers -> Server1 -> Process Definition -> Java Virtual Machine -> Generic JVM arguments
Parâmetro:
-Xdump:system+heap+java:events=gpf+throw+user,filter=java/lang/OutOfMemoryError,request=exclusive+prepwalk
Navegação:
Servers -> Application Servers -> Server1 -> Process Definition > Environment Entries
Parâmetros:
IBM_HEAPDUMP=true IBM_HEAPDUMP_OUTOFMEMORY=true IBM_HEAPDUMPDIR=c:\temp
Agora criar um atalho para facilitar o acesso ao script wsadmin, no diretório WAS_HOME/bin.
Windows
* _wsadmin_comm.bat wsadmin -conntype SOAP -user admin -password senha_do_admin %*
</p>
Unix
* _wsadmin_comm.sh wsadmin -conntype SOAP -user admin -password senha_do_admin $*
Crie scripts JACL (script baseado em TCL) para invocação dos comandos.
Memory Dump
* heapdump.jacl set jvm [$AdminControl queryNames type=JVM,*] $AdminControl invoke $jvm generateHeapDump
Thread dump
* threaddump.jacl set jvm [$AdminControl queryNames type=JVM,*] $AdminControl invoke $jvm dumpThreads
Para gerar os dumps basta invocar os comandos
_wsadmin_comm.sh -f heapdump.jacl
Veja no diretório especificado em IBM_HEAPDUMPDIR ou no AppServer01 se os arquivos foram gerados em um deles.
Depois use ferramental adequado para analisar os dumps (Eclipse Memory Analyzer, IBM Thread Dump Analyzer).
Deixe um comentário