Aller au contenu

Recette SQL IBM i (AS/400) · Travaux

Les 10 travaux qui consomment le plus de processeur

Les 10 travaux qui ont consommé le plus de processeur depuis leur démarrage, avec leur sous-système et leur stockage temporaire : l'équivalent trié de WRKACTJOB.

Le besoin

Le système ralentit, l'utilisation du processeur grimpe : il faut savoir quel travail consomme. WRKACTJOB permet de trier, mais pas de garder le résultat ni de le comparer d'un jour à l'autre.

La requête

SELECT JOB_NAME, SUBSYSTEM, JOB_TYPE, CPU_TIME, ELAPSED_CPU_PERCENTAGE,
       TEMPORARY_STORAGE, JOB_STATUS
FROM TABLE(QSYS2.ACTIVE_JOB_INFO(RESET_STATISTICS => 'NO')) J
ORDER BY CPU_TIME DESC
FETCH FIRST 10 ROWS ONLY

CPU_TIME est le temps processeur cumulé depuis le démarrage du travail, en millisecondes. ELAPSED_CPU_PERCENTAGE est la part du processeur sur l'intervalle de mesure ; elle n'a de sens qu'après un premier appel avec RESET_STATISTICS => 'YES', puis un second quelques secondes plus tard.

Le résultat sur un IBM i 7.5

Ce que l'IBM i a renvoyé le 01/10/2026 (5 lignes au plus) :

JOB_NAME Nom du travail SUBSYSTEM Sous-système JOB_TYPE Type de travail CPU_TIME Temps processeur consommé ELAPSED_CPU_PERCENTAGE Pourcentage de CPU écoulé TEMPORARY_STORAGE Stockage temporaire JOB_STATUS Statut du travail
802116/QBRMS/Q1ACPDST Q1ABRMNET PJ 5426053 0 43 DLYW
802108/QLWISVR/ADMIN5 QHTTPSVR BCI 3662809 0 197 THDW
802266/QWSERVICE/FORMATIONS QHTTPSVR BCI 2946842 0 223 THDW
802105/QLWISVR/ADMIN2 QHTTPSVR BCI 2873429 0 304 THDW
802103/QWEBADMIN/ADMIN1 QHTTPSVR BCI 2703819 0 713 THDW

Chez nous, ce sont les serveurs de BRMS et les serveurs HTTP (QHTTPSVR) qui arrivent en tête : des travaux qui tournent depuis le dernier démarrage, d'où un temps cumulé élevé.

Données anonymisées : les noms de système, de profils, de bibliothèques, de postes et les adresses IP ont été remplacés.

L'adapter à votre système

Pour voir qui consomme maintenant : lancez une première fois avec RESET_STATISTICS => 'YES', attendez quelques secondes, relancez et triez sur ELAPSED_CPU_TIME. Pour vous limiter à un sous-système, ajoutez SUBSYSTEM_LIST_FILTER => 'QBATCH'.