Bonjour, j'utilise la commande kill -3 pour voir le dump de threads de la JVM sous Unix. Mais où puis-je trouver le résultat de cette commande kill? Je suis perdu!!
Réponses
Trop de publicités?Le vidage de thread est écrit sur le système à partir de la machine virtuelle sur laquelle vous avez exécuté kill -3. Si vous redirigez la sortie de la console de la machine virtuelle vers un fichier, le vidage de thread sera dans ce fichier. Si la machine virtuelle Java est en cours d'exécution dans une console ouverte, le vidage de thread sera affiché dans sa console.
Il existe un moyen de rediriger la sortie du vidage du thread JVM sur le signal de rupture en fichier séparé avec l'option de diagnostic LogVMOutput :
-XX:+UnlockDiagnosticVMOptions -XX:+LogVMOutput -XX:LogFile=jvm.log
Lors de l'utilisation de tuer -3 on devrait voir le thread dump dans la sortie standard. La plupart des serveurs d'application écrire la sortie standard dans un fichier séparé. Vous devriez le trouver là-bas lors de l'utilisation de tuer -3. Il y a de multiples façons de s'fil des dumps:
- Tuer -3 : Donne la sortie standard.
- Si l'on a accès à la fenêtre de la console où le serveur est en cours d'exécution, on peut utiliser Ctrl+Pause combinaison de touches pour générer la trace de la pile sur les mst sortie.
- Pour hotspot VM, on peut également utiliser jstack commande pour générer thread dump. C'est une partie du JDK. La syntaxe est comme suit: Utilisation: jstack [-l] (connecter à l'exécution du processus) jstack -F [-m] [-l] (pour se connecter à un processus bloqué)
- Pour JRockit JVM, nous pouvons utiliser JRCMD de commande qui est livré avec le JDK Syntaxe: jrcmd [ []] [-l] [-f fichier] [-p] -h]