Service SQL IBM i (AS/400) · Procédure
QSYS2.SET_JVM
Piloter une machine virtuelle Java
Procédure qui demande une action à une machine virtuelle Java en cours d'exécution, par exemple générer un vidage du tas (heap dump) pour diagnostic.
À quoi ça sert
Cette procédure agit sur une JVM identifiée par le nom de son travail (JOB_NAME, au format numéro/utilisateur/nom comme dans l'exemple d'IBM) et exécute l'action demandée dans ACTION. L'exemple utilise GENERATE_HEAP_DUMP pour produire des diagnostics détaillés d'une JVM précise.
Elle sert à diagnostiquer une application Java gourmande en mémoire ou bloquée, sans passer par une session interactive. Elle agit sur le travail en cours. Les JVM actives se repèrent avec QSYS2.JVM_INFO.
Résultat réel sur un IBM i 7.5
Procédure non exécutée sur notre IBM i de test : elle agit sur la configuration du système ou sur d'autres travaux.
L'exemple d'IBM
Générer des diagnostics détaillés pour une machine virtuelle Java précise.
-- Description: Generate detailed diagnostics for a specific JVM
CALL QSYS2.SET_JVM('962835/JAVA/QJVAEXEC', 'GENERATE_HEAP_DUMP');
Bon à savoir
Un vidage du tas peut être volumineux et ralentir la JVM le temps de l'écriture : vérifiez l'espace disponible avant de le lancer sur un système de production.
Paramètres
| Paramètre | Type | Par défaut | Signification |
|---|---|---|---|
JOB_NAME |
VARCHAR(28) | obligatoire | Nom du travail |
ACTION |
VARCHAR(20) | obligatoire | Action à exécuter |