[JAVA] Comment obtenir un heapdump à partir d'un conteneur Docker

Lors de l'exécution d'une application Java avec Docker, une fuite de mémoire peut se produire et l'application peut se bloquer. Videz le tas utilisé par java à ce moment-là afin qu'il puisse être analysé.

Définissez l'option de vidage de tas dans JAVA_OPTS dans Dockerfile

ENV JAVA_OPTS="-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp/dump.hprof"

Obtenez un vidage de tas avec Docker cp

docker ps -aq | xargs -I{} docker cp {}:/tmp/dump.hprof /tmp/{}_dump.hprof

Analyser le vidage du tas

Utilisez MAT ou jhat pour l'analyse

memory analyzer (MAT)

jhat

URL de référence

Recommended Posts

Comment obtenir un heapdump à partir d'un conteneur Docker
Comment déployer à partir d'une image Docker locale vers Heroku
Comment créer un conteneur Java
Comment accéder à un conteneur s'exécutant sur AWS Fargate
[Docker] Comment accéder à l'hôte depuis l'intérieur du conteneur. http: //host.docker.internal:
[Docker] Copie des fichiers du conteneur Docker vers l'hôte
Comment vérifier le journal dans le conteneur Docker
Paramètre pour quitter le conteneur Docker avec VScode
Copier les fichiers du conteneur Docker vers l'hôte (docker cp)
Comment obtenir une classe depuis Element en Java
Comment installer Docker
J'ai créé un conteneur Docker pour exécuter Maven
Comment mettre à jour un fichier prédéfini dans un conteneur Docker
Comment obtenir l'optimisation SIMD pour HotSpot JavaVM
Comment démarrer un conteneur Docker avec un volume monté dans un fichier de commandes
[Spring Boot] Comment obtenir des propriétés dynamiquement à partir d'une chaîne contenue dans une URL
Comment obtenir n'importe quel numéro de chiffre à partir de 2 chiffres ou plus! !!
Comment passer d'Eclipse Java à un fichier SQL
Indiquez comment apprendre de Docker à AKS sur AWS
Créer un conteneur Docker pour convertir EPS en source PGF
[Java] Comment obtenir une requête par communication HTTP
[Java] Comment effacer un caractère spécifique d'une chaîne de caractères
Transférer une image Docker des actions GitHub vers GitHub Container Registry
Comment obtenir JDK etc. depuis Oracle avec CLI
Comment laisser un commentaire
Comment définir nginx de Docker
Comment insérer une vidéo
Comment créer une méthode
[Docker] Comment mettre à jour à l'aide d'un conteneur dans Heroku et comment gérer l'erreur de migration
[Docker] Comment voir le contenu des volumes. Démarrez un conteneur avec les privilèges root.
Écrivons comment créer une API avec SpringBoot + Docker à partir de 0
Comment créer une image de conteneur légère pour les applications Java
Comment créer un formulaire pour sélectionner une date dans le calendrier
Comment stocker des chaînes de ArrayList à String en Java (personnel)
Comment obtenir les informations les plus longues de Twitter à partir du 12/12/2016
Comment graver un disque d'installation de Windows à partir d'Ubuntu
[Notes personnelles] Comment pousser une image Docker vers des packages GitHub
Comment créer un serveur Jenkins avec un conteneur Docker sur CentOS 7 de VirtualBox et accéder au serveur Jenkins à partir d'un PC local
[IOS 14] Comment obtenir des données d'image de type Data directement à partir de PHPickerViewController?
[jsoup] Comment obtenir la totalité de la documentation
Comment utiliser HttpClient de Java (Get)
Introduction à Linux Container / Docker (Partie 1)
Comment démarrer avec Slim
Comment signer Minecraft MOD
Comment créer un pilote JDBC
Pour exécuter JavaFX sur Docker
Comment obtenir des paramètres dans Spark