当前位置:网站首页>Outils de débogage JVM - Arthas

Outils de débogage JVM - Arthas

2022-06-24 07:04:00 Angryshark 128.

Télécharger l'adresse

Liens:https://pan.baidu.com/s/1CMAR1wto-vSLIeKtlCsXJQ
Code d'extraction:naza

DémarrageArthas

> java -jar arthas-boot.jar --target-ip=0.0.0.0

Insérer la description de l'image ici

Saisissez le numéro de séquence pour sélectionner le processus à afficher

Insérer la description de l'image ici

  1. L'utilisateur qui exécute le programme doit avoir les mêmes permissions que le processus cible.Par exempleadminUtilisateur à exécuter:sudo su admin && java -jar arthas-boot.jar Ou sudo -u admin -EH java -jar arthas-boot.jar.

  2. SiattachPas de processus cible,Vous pouvez voir~/logs/arthas/ Journaux dans le répertoire.

Affichage du Navigateur

Insérer la description de l'image ici

Surveillance pertinente

Surveillance de la méthode d'exécution -monitor Nom de la classe Méthodes

[[email protected]]> monitor com.*.*.PointerDao.SnidModel toString

Insérer la description de l'image ici

Voir la valeur de retour de la fonction-watch Nom de la classe Nom de la fonction returnObj

[[email protected]]> watch com.oidd.*.Common.* encrypt returnObj

Insérer la description de l'image ici

Voir les informations sur le processus-dashboard

[[email protected]]> dashboard

Insérer la description de l'image ici

Chemin d'appel interne de la méthode,Et affiche le temps sur chaque noeud du chemin de la méthode-trace

Affiche le chemin d'appel vers lequel la méthode courante est appelée-stack

Méthode d'exécution du tunnel spatio - temporel des données,Enregistrer les informations de retour d'entrée pour chaque appel à la méthode spécifiée,Et capable d'observer ces différentes réductions de temps-tt

Générer un diagramme de flamme-profiler

profiler La commande prend en charge la génération de diagrammes de flamme pour les hotspots d'application.Essentiellement par échantillonnage continu,Les résultats de l'échantillonnage ont ensuite été recueillis pour produire un diagramme de flamme..

profiler  La structure de base de la commande est  profiler action [actionArg]

Description des paramètres
Nom du paramètre	Description des paramètres
action	Mesures à prendre
actionArg	 Mode nom de propriété 
[i:]	Intervalle d'échantillonnage(Unité:ns)(Par défaut:10'000'000,C'est - à - dire:10 ms)
[f:]	 Dump output to specified path 
[d:]	 Exécuter le profilage en quelques secondes 
[e:]	 Quel événement suivre (cpu, alloc, lock, cache-missesAttendez.),Par défautcpu

Démarrageprofiler

$ profiler start
Started [cpu] profiling

Par défaut,Ce qui en résulte estcpuDiagramme de flamme,C'est - à - dire:eventPourcpu.Ça marche–eventParamètres à spécifier.

Obtenir collectésampleNombre de

$ profiler getSamples
23

VoirprofilerStatut

$ profiler status
[cpu] profiling is running for 4 seconds

Peut voir le courantprofilerLequel échantillonnereventEt temps d'échantillonnage.

Arrêtez!profiler

GénérersvgFormat des résultats

$ profiler stop
profiler output file: /tmp/demo/arthas-output/20191125-135546.svg
OK

Par défaut,Les résultats générés sont enregistrés dans le Répertoire de travail de l'applicationarthas-outputTable des matières.Peut passer --fileParamètre pour spécifier le chemin du résultat de sortie.Par exemple,:

$ profiler stop --file /tmp/output.svg
profiler output file: /tmp/output.svg
OK

GénérerhtmlFormat des résultats
Par défaut,Le document final estsvgFormat,Si vous voulez générerhtmlFormat,Ça marche–formatDésignation des paramètres:

$ profiler stop --format html
profiler output file: /tmp/test/arthas-output/20191125-143329.html
OK

Ou–fileNom du fichier dans le paramètre.Par exemple,–file /tmp/result.html .

Voir à travers le Navigateurarthas-outputEn bas.profilerRésultats
Par défaut,arthasUtiliser3658Port,Peut être ouvert: http://localhost:3658/arthas-output/ Voirarthas-outputSous la table des matièresprofilerRésultats

Cliquez pour voir les résultats spécifiques:

Si ouichromeNavigateur, Plusieurs rafraîchissements peuvent être nécessaires .

JVMCommandes connexes

Imprimer la pile de thread spécifiée -thread ThreadID

[[email protected]]> thread 2742303

Insérer la description de l'image ici

VoirJVMInformation-jvm

[[email protected]]> jvm

Insérer la description de l'image ici

VoirJVMVariables d'environnement-sysenv

[[email protected]]> sysenv

Insérer la description de l'image ici

VoirJVMPropriétés du système-sysprop

[[email protected]]> sysprop

Insérer la description de l'image ici

VoirJVM Configuration diagnostique -vmoption

[[email protected]]> vmoption

Voir le courant JVM DePerf CounterInformation-perfcounter

Voir et modifierlogger-logger

Voir les propriétés statiques de la classe-getstatic

Mise en œuvreognlExpression-ognl

Voir Mbean Informations sur-mbean

Voir les informations du tas-heapdump

Commandes liées à la classe

Voir les classes chargées-sc Jokers

[[email protected]]> sc *

Insérer la description de l'image ici

Voir les méthodes chargées -sm Jokers

[[email protected]]> sm *

Insérer la description de l'image ici

Classe de décompilation—jad Nom de la classe

[[email protected]]> jad  com.*.*.Common.GlobalVariable

Insérer la description de l'image ici

Compilateur de mémoire,Compilation de mémoire.javaLe dossier est.classDocumentation-mc

Chargement externe.classDocumentation,redefineÀJVM- Oui.-redefine

dumpClasse chargée byte code Vers un répertoire spécifique-dump

VoirclassloaderArbre d'héritage de,urls,Informations sur le chargement des classes,UtiliserclassloaderVas - y.getResource-classloader

Autres commandes de base

help——Voir l'aide de commande

cat——Imprimer le contenu du fichier,EtlinuxÀ l'intérieur.catLes ordres sont similaires

echo–Imprimer les paramètres,EtlinuxÀ l'intérieur.echoLes ordres sont similaires

grep——Recherche de correspondance,EtlinuxÀ l'intérieur.grepLes ordres sont similaires

tee—— Copier l'entrée standard dans la sortie standard et le fichier spécifié ,EtlinuxÀ l'intérieur.teeLes ordres sont similaires

pwd——Retour au Répertoire de travail actuel,EtlinuxLes ordres sont similaires

cls——Vider la zone actuelle de l'écran

session——Voir les informations pour la session en cours

reset——Réinitialiser la classe d'amélioration,Sera Arthas Restauration complète des classes améliorées,Arthas Toutes les classes améliorées sont réinitialisées lorsque le serveur est fermé

version——Exporter la cible actuelle Java Processus chargé Arthas Numéro de version

history——Imprimer l'historique des commandes

quit——Quitter le courant Arthas Client,Autres Arthas Le client n'est pas affecté

stop——Fermer Arthas Serveur,Tous les Arthas Tous les clients sortent

keymap——ArthasListe des raccourcis clavier et des raccourcis clavier personnalisés

原网站

版权声明
本文为[Angryshark 128.]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/175/202206240050385302.html