Come generare un dump dell'heap Java o thread dump per risolvere un problema di ePO
Articoli tecnici ID:
KB73309
Ultima modifica: 2022-09-12 16:47:50 Etc/GMT
Ambiente
McAfee ePolicy Orchestrator (ePO) 5.x
Riepilogo
A volte è possibile che si verifichino problemi che richiedono un Java Heap dump o Thread dump .
Gli esempi includono:
- Il server ePO non è più in memoria.
- Vengono visualizzati errori, ad esempio OutOfMemory nel campo Orion.log file sul server ePO.
- Tomcat si trova in uno stato di non risposta o errore.
- Assistenza tecnica richiede un dump dell'heap.
ATTENZIONE Questo articolo contiene informazioni sull'apertura o sulla modifica del registro di sistema.
- Le informazioni riportate di seguito sono destinate agli amministratori di sistema. Le modifiche del registro di sistema sono irreversibili e possono causare errori di sistema se non effettuate in modo adeguato.
- Prima di procedere, l'assistenza tecnica consiglia di eseguire un backup del registro e di acquisire informazioni sulle modalità di ripristino. Per ulteriori informazioni, consultare l'articolo informazioni sul Registro di sistema Microsoft Windows per utenti avanzati.
- Non eseguire un file REG non indicato esplicitamente come file di importazione del registro autentico.
Problema
Il Orion.log file registra un errore di Garbage Collection (GC):
java.sql.SQLException: java.lang.OutOfMemoryError: GC overhead limit exceeded
Soluzione
1
Genera un Java Heap dump Quando ePO incontra un OutOfMemory errore nella Orion.log file nel server applicazioni ePO. Per ottenere il dump, modificare la Tomcat modalità di avvio di e Java dei servizi:
Impostare la chiave secondaria Java su -XX:+HeapDumpOnOutOfMemoryError:
- Fare clic su Avvia , Esegui, digitare regedit , quindi fare clic su OK.
- Passare a ed espandere la seguente chiave di registro:
Server a 32 bit:
HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Procrun 2.0\MCAFEETOMCATSRV200\Parameters\Java
Server a 64 bit:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Apache Software Foundation\Procrun 2.0\MCAFEETOMCATSRV200\Parameters\Java
- Selezionare la Java sottochiave.
- Nel riquadro a destra, fare doppio clic sul pulsante Options valore e aggiungere i dati relativi al valore riportato di seguito nella parte inferiore:
-XX:+HeapDumpOnOutOfMemoryError
- Fare clic su Avvia , Esegui, digitare services.msc , quindi fare clic su OK.
- Riavviare il Server applicazioni ePO servizio.
- Se l'errore si verifica nuovamente, eseguire lo strumento Minimum escalation requirements (MER) per ePO. Assicurarsi inoltre che il dump dell'heap Java sia incluso nei risultati MER.
Per informazioni dettagliate, consultare KB72895-come raccogliere un registro dei requisiti minimi di escalation per ePolicy e McAfee Agent.
NOTE:
- Per impostazione predefinita, il dump dell'heap viene creato nella root della directory di installazione di ePO.
- Il file viene chiamato Java_<pid>.hprof , dove <pid> è l'ID processo per l'esecuzione corrente tomcat5.exe processo.
- Nei sistemi operativi a 64 bit, il (*.hprof) file di dump potrebbe essere scritto nel c:\windows\SysWow64\ cartella piuttosto che la root della cartella di installazione di ePO. Può essere collocato anche nella cartella all'interno della directory di installazione di server\bin ePO.
Soluzione
2
Genera un Java Heap dump Quando ePO incontra un GC overhead limit exceeded errore nella Orion.log file. Per ottenere il dump, modificare la Tomcat modalità di avvio di e Java dei servizi:
Impostare la chiave secondaria Java su -XX:+HeapDumpBeforeFullGC:
- Fare clic su Avvia , Esegui, digitare regedit e fare clic su OK.
- Passare a ed espandere la chiave di registro riportata di seguito:
Server a 32 bit:
HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Procrun 2.0\MCAFEETOMCATSRV200\Parameters\Java
Server a 64 bit:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Apache Software Foundation\Procrun 2.0\MCAFEETOMCATSRV200\Parameters\Java
- Selezionare il Java sulla sottochiave.
- Nel riquadro a destra, fare doppio clic sul pulsante Options valore e aggiungere i dati relativi al valore riportato di seguito nella parte inferiore:
-XX:+HeapDumpBeforeFullGC
- Fare clic su Avvia , Esegui, digitare services.msc, e fare clic su OK.
- Riavviare il ePO Application Server servizio.
- Se l'errore si verifica nuovamente, eseguire lo strumento Minimum escalation requirements (MER) per ePO. Assicurarsi inoltre che Java Heap dump sia incluso nei risultati Mer.
Per informazioni dettagliate, consultare KB72895-come raccogliere un registro dei requisiti minimi di escalation per ePolicy e McAfee Agent.
NOTE:
- Per impostazione predefinita, Heap dump viene creato nella root della directory di installazione di ePO.
- Il file viene chiamato Java_<pid>.hprof , dove <pid> è l'ID processo per l'esecuzione corrente tomcat5.exe processo.
- Nei sistemi operativi a 64 bit, il file di dump ( *.hprof ) potrebbe essere scritto nel c:\windows\SysWow64\ cartella. Anziché la directory principale della cartella di installazione di ePO. Può essere collocato anche nella cartella all'interno della directory di installazione di server\bin ePO.
Soluzione
3
Genera un Java Heap dump su richiesta utilizzando JMAP :
- Scaricare JDK 1.6 o versioni successive da http://www.Oracle.com/technetwork/java/Java SE/downloads/index.html e installarlo sul server ePO.
- Eseguire il download PSExec da Sysinternals in http://technet.Microsoft.com/en-US /sys Internals/bb897553 e installarlo sul server ePO.
- Attendere che si verifichi la condizione di errore o eseguire i passaggi necessari per riprodurlo.
- Aprire un prompt dei comandi con privilegi di amministratore e passare alla directory che contiene il psexec.exe .
- Eseguire il seguente comando:
psexec -s "<path to JDK installation directory>\ bin\jmap.exe" -dump: Format = b, file = heap.bin <PID for Tomcat>
Esempio:
psexec -s "C:\Program Files (x86)\Java\jdk1.7.0_01\bin\jmap.exe" -dump:format=b,file=heap.bin 3408
Il file di dump dell'heap può essere trovato in:
- 32 bit:
C:\Windows\System32\
- 64 bit
C:\Windows\SysWOW64\
Soluzione
4
Genera un utilizzo jstack di Java thread dump :
- Scaricare JDK 1.6 o versioni successive da http://www.Oracle.com/technetwork/java/Java SE/downloads/index.html e installarlo sul server ePO.
- Scarica PSExec da Sysinternals in http://technet.Microsoft.com/en-US /sys Internals/bb897553 e installarlo sul server ePO.
- Attendere che si verifichi la condizione di errore o eseguire i passaggi necessari per riprodurlo.
- Aprire un prompt dei comandi con privilegi di amministratore e passare alla directory che contiene il psexec.exe .
- Eseguire il comando seguente:
psexec -s "< percorso della cartella >\bin\jstack" -l < di installazione JDK PID per il percorso Tomcat > > < nel punto in cui si desidera che il file >\jstack_output.txt
di output
Esempio
psexec -s "C:\Program Files (x86)\Java\jdk1.7.0_01\bin\jstack.exe" -l 3408 > C:\jstack_output.txt
Soluzione
5
Genera un Java Heap Dump o Java Thread Dump su richiesta utilizzando un comando del browser:
NOTA: Il seguente funziona solo con e PO 5.10 Update 7 o in un secondo momento.
- Accedere al server ePO.
- Aprire un browser Web.
- Incollare uno dei seguenti comandi e premere INVIO:
Per acquisire un Heap Dump , digitare: https://server_name:8443/remote/core.heapDump
Per acquisire un Thread Dump , digitare: https://server_name:8443/remote/core.threadDump
NOTE:
- Sostituire server_name con il nome effettivo del server ePO.
- Modificare il numero di porta quando necessario. Predefinito fornito 8443.
- Il Heap dump "hprof" file si trova nella cartella: ePO_Install_folder>\Server\Logs
Dichiarazione di non responsabilità
Il contenuto di questo articolo è stato scritto in inglese. In caso di differenze tra il contenuto in inglese e la traduzione, fare sempre riferimento al contenuto in iglese. Parte del contenuto è stata tradotta con gli strumenti di traduzione automatica di Microsoft.
|