Aller au contenu

Service SQL IBM i (AS/400) · Fonction table

QSYS2.JOBLOG_INFO

Lire le journal d'un travail

Renvoie les messages du journal d'un travail (actif ou terminé) : l'équivalent SQL de DSPJOBLOG, avec filtre et jointure possibles.

À quoi ça sert

La fonction de table lit le journal du travail désigné par JOB_NAME (la valeur '*' désigne le travail courant). Chaque ligne est un message : identifiant, type et sous-type, gravité, horodatage, programme, module, procédure et instruction émetteurs, programme destinataire, texte du message et texte de second niveau. IGNORE_ERRORS vaut YES par défaut.

Elle sert à rechercher des erreurs dans un travail sans ouvrir le journal à l'écran ni passer par un fichier spoule : on filtre sur la gravité ou l'identifiant de message, on trie par horodatage, on garde les messages d'erreur dans une table pour un suivi. Elle fonctionne aussi pour un travail qui a laissé son journal.

L'exemple d'IBM l'associe à ACTIVE_JOB_INFO et l'applique à des travaux QSQSRVR pour étudier les plus gros consommateurs de processeur.

Résultat réel sur un IBM i 7.5

Ce que nous avons exécuté :

WITH TT(AUTHORIZATION_NAME, SERVER_MODE_JOB_NAME, CPU_TIME, TOTAL_DISK_IO_COUNT) 
AS (SELECT AUTHORIZATION_NAME, JOB_NAME, CPU_TIME, TOTAL_DISK_IO_COUNT 
    FROM TABLE(QSYS2.ACTIVE_JOB_INFO(JOB_NAME_FILTER => 'QSQSRVR')) X) 
SELECT AUTHORIZATION_NAME, SS.MESSAGE_TEXT, 
       SERVER_MODE_JOB_NAME, CPU_TIME, TOTAL_DISK_IO_COUNT 
FROM TT, TABLE(QSYS2.JOBLOG_INFO(SERVER_MODE_JOB_NAME)) SS 
WHERE MESSAGE_ID = 'CPF9898' AND FROM_PROGRAM = 'QSQSRVR' 
ORDER BY CPU_TIME DESC LIMIT 25

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

AUTHORIZATION_NAME MESSAGE_TEXT Texte du message SERVER_MODE_JOB_NAME CPU_TIME TOTAL_DISK_IO_COUNT
QSYS SERVER MODE CONNECTING JOB IS 968979/QSYS/QYPSPFRCOL. 905026/QUSER/QSQSRVR 10172 8729
QSYS SERVER MODE CONNECTING JOB IS 968979/QSYS/QYPSPFRCOL. 902100/QUSER/QSQSRVR 5153 6316
QWEBADMIN SERVER MODE CONNECTING JOB IS 802238/QWEBADMIN/QNAVMNSRV. 968986/QUSER/QSQSRVR 4486 3671
QWEBADMIN SERVER MODE CONNECTING JOB IS 802238/QWEBADMIN/QNAVMNSRV. 969324/QUSER/QSQSRVR 600 339
QDIRSRV SERVER MODE CONNECTING JOB IS 802036/QDIRSRV/QUSRDIR. 802077/QUSER/QSQSRVR 419 1350

Données anonymisées : les noms de système, de profils, de bibliothèques, de postes et les adresses IP ont été remplacés. Les objets du schéma JOBISQL sont des objets de démonstration créés pour ce site.

L'exemple d'IBM

Trouver les 25 plus gros consommateurs de processeur parmi les travaux QSQSRVR actifs.

-- Description: Find the top 25 consumers of CPU in active QSQSRVR jobs 
WITH TT(AUTHORIZATION_NAME, SERVER_MODE_JOB_NAME, CPU_TIME, TOTAL_DISK_IO_COUNT) 
AS (SELECT AUTHORIZATION_NAME, JOB_NAME, CPU_TIME, TOTAL_DISK_IO_COUNT 
    FROM TABLE(QSYS2.ACTIVE_JOB_INFO(JOB_NAME_FILTER => 'QSQSRVR')) X) 
SELECT AUTHORIZATION_NAME, SS.MESSAGE_TEXT, 
       SERVER_MODE_JOB_NAME, CPU_TIME, TOTAL_DISK_IO_COUNT 
FROM TT, TABLE(QSYS2.JOBLOG_INFO(SERVER_MODE_JOB_NAME)) SS 
WHERE MESSAGE_ID = 'CPF9898' AND FROM_PROGRAM = 'QSQSRVR' 
ORDER BY CPU_TIME DESC LIMIT 25;

Paramètres

ParamètreTypePar défautSignification
JOB_NAME VARCHAR(28) obligatoire Nom du travail
IGNORE_ERRORS VARCHAR(3) 'NO' Ignorer les erreurs

Colonnes renvoyées (25)

Afficher les 25 colonnes
ColonneTypeSignification
ORDINAL_POSITION INTEGER Position ordinale
MESSAGE_ID VARCHAR(7) Identifiant du message
MESSAGE_TYPE VARCHAR(13) Type de message
MESSAGE_SUBTYPE VARCHAR(22) Sous-type du message
SEVERITY SMALLINT Gravité
MESSAGE_TIMESTAMP TIMESTAMP Horodatage du message
FROM_LIBRARY VARCHAR(10) Bibliothèque d'origine
FROM_PROGRAM VARCHAR(256) Programme d'origine
FROM_MODULE VARCHAR(10) Module d'origine
FROM_PROCEDURE VARCHAR(4096) Procédure d'origine
FROM_INSTRUCTION VARCHAR(10) Instruction d'origine
TO_LIBRARY VARCHAR(10) Bibliothèque de destination
TO_PROGRAM VARCHAR(10) Programme de destination
TO_MODULE VARCHAR(10) Module de destination
TO_PROCEDURE VARCHAR(4096) Procédure de destination
TO_INSTRUCTION VARCHAR(10) Instruction de destination
FROM_USER VARCHAR(10) Utilisateur d'origine
MESSAGE_LIBRARY VARCHAR(10) Bibliothèque du message
MESSAGE_FILE VARCHAR(10) Fichier de messages
MESSAGE_TOKEN_LENGTH SMALLINT Longueur des variables de substitution du message
MESSAGE_TOKENS VARCHAR(12000) Variables de substitution du message
MESSAGE_TEXT GRAPHIC VARYING Texte du message
MESSAGE_SECOND_LEVEL_TEXT GRAPHIC VARYING Texte de second niveau du message
MESSAGE_KEY BINARY(4) Clé du message
QUALIFIED_JOB_NAME VARCHAR(28) Nom qualifié du travail