Aller au contenu

STRDBMON

Démarrer moniteur base données

En bref

La commande STRDBMON (Démarrer moniteur base données) permet de démarrer la collecte des statistiques relatives aux performances de la base de données pour tous les travaux, pour un travail spécifique sur le système ou pour un ensemble de travaux déterminés.

STRDBMON se lit STR (Démarrer) + DBMON. Sur IBM i, le nom d'une commande associe presque toujours un verbe et un objet.

Syntaxe minimale

STRDBMON OUTFILE(…)

Paramètres

Astuce : dans une session 5250, tapez STRDBMON puis F4 pour l'invite de saisie, et F1 sur un paramètre pour son aide.

Aide IBM i de la commande

Texte du F1, IBM i 7.5 en français (bibliothèque QSYS)

Où s'exécute : Tous les environnements (*ALL)
Compatible multitâche : Sous conditions

La commande STRDBMON (Démarrer moniteur base données) permet de démarrer la collecte des statistiques relatives aux performances de la base de données pour tous les travaux, pour un travail spécifique sur le système ou pour un ensemble de travaux déterminés. Ces statistiques sont collectées dans un membre ou un fichier base de données défini par l'utilisateur. Si ce membre ou ce fichier n'existe pas, il est créé sur le modèle du fichier QAQQDBMN situé dans la bibliothèque QSYS. Si ce membre ou ce fichier existe, le fichier est vérifié afin de voir s'il s'agit du même format d'enregistrement.

Pour chaque moniteur activé via la commande STRDBMON, le système génère un ID qui permet de les identifier distinctement. L'ID moniteur peut être employé avec la commande ENDDBMON pour identifier distinctement chaque moniteur à arrêter. L'ID moniteur est renvoyé dans le message d'information CPI436A qui est généré à chaque occurrence de la commande STRDBMON. L'ID moniteur figure également dans la colonne QQC101 de l'enregistrement dans la base de données QQQ3018.

Restrictions :

  1. Il existe deux types de moniteurs. Un moniteur privé traite un travail déterminé (ou le travail en cours). Un moniteur public sert à collecter des données associées à plusieurs travaux. Vous ne pouvez démarrer qu'un seul (1) moniteur à la fois pour un travail spécifique (il ne peut y avoir qu'un moniteur privé pour un travail spécifique). Par exemple, vous ne pouvez pas indiquer STRDBMON JOB(*) suivi de STRDBMON JOB(*) dans le même travail. Vous pouvez activer jusqu'à dix (10) moniteurs publics simultanément. Par exemple, vous pouvez indiquer STRDBMON JOB(*ALL), suivi de STRDBMON JOB(*ALL), à condition que le nombre de moniteurs publics n'excède pas 10. Vous pouvez activer simultanément 10 moniteurs publics et 1 moniteur privé pour un travail spécifique.
  2. Si plusieurs moniteurs sont associés au même fichier en sortie, le système n'enregistre qu'un exemplaire des statistiques de la base de données dans le fichier en sortie désigné pour chaque travail. Par exemple, STRDBMON OUTFILE(LIB/TABLE1) JOB(*) et STRDBMON OUTFILE(LIB/TABLE1) JOB(*ALL) utilisent le même fichier en sortie. Pour ce qui concerne le travail en cours, vous n'obtiendrez pas deux copies de l'enregistrement des statistiques de base de données (une pour le moniteur privé, une pour le moniteur public). Vous n'en obtiendrez qu'une seule.
  3. Vous ne pouvez pas indiquer QTEMP comme bibliothèque au paramètre OUTFILE, sauf si vous avez également indiqué JOB(*).
  4. Cette commande autorise les unités d'exécution multiples sous certaines conditions. Pour les travaux à unités d'exécution multiples, cette commande n'admet pas les unités d'exécution multiples et risque d'échouer lorsque le paramètre OUTFILE désigne un fichier réparti ou un fichier DDM.
  5. Un moniteur public nécessite que le fichier indiqué pour le paramètre OUTFILE soit dans une bibliothèque résidant dans l'ASP système.
  6. Lorsque cette commande est utilisée avec un paramètre JOB générique ou s'appliquant à d'autres travaux utilisateur, vous devez disposer des droits spéciaux d'exploitation des travaux (*JOBCTL) ou être autorisé à utiliser la fonction d'administrateur SQL d'IBM i via l'administration d'applications de System i Navigator. La commande CHGFCNUSG, exécutée avec un ID fonction QIBM_DB_SQLADM, peut également être utilisée pour modifier la liste des utilisateurs autorisés.

Paramètres

Mot-clé Description Valeurs possibles Remarques
OUTFILE Fichier recevant la sortie Nom d'objet qualifié Obligatoire, positionnel 1
Qualificatif 1: Fichier recevant la sortie Nom
Qualificatif 2: Biblio Nom, *LIBL, *CURLIB
OUTMBR Options pour membre de sortie Liste d'éléments Facultatif
Élément 1: Membre recevant la sortie Nom, *FIRST
Élément 2: Remplacement ou ajout enregs *REPLACE, *ADD
JOB Travail Liste d'éléments Facultatif
Élément 1: Name Valeurs uniques: *
Autres valeurs: Nom de travail qualifié
Qualificatif 1: Name Nom générique, nom, *ALL
Qualificatif 2: Utilisat Nom générique, nom, *ALL
Qualificatif 3: Numéro 000000-999999, *ALL
Élément 2: Opérateur de filtre *EQ, *NE
TYPE Type d'enregistrement *DETAIL, *BASIC, *SUMMARY Facultatif
FRCRCD Forcer écriture enregistrement 0-32767, *CALC Facultatif
INLNBRRCD Nombre initial d'enreg 0-2147483646, *NONE Facultatif
RUNTHLD Seuil de phase d'exécution 0-2147483647, *NONE Facultatif
STGTHLD Seuil mémoire 0-2147483647, *NONE Facultatif
INCSYSSQL Inclure le SQL système *NO, *YES, *INI Facultatif
FTRFILE Filtrer par fich base données Valeurs uniques: *NONE
Autres valeurs (jusqu'à 10 répétitions): Liste d'éléments
Facultatif
Élément 1: Fichier Nom d'objet qualifié
Qualificatif 1: Fichier Nom générique, nom, *ALL
Qualificatif 2: Biblio Nom générique, nom
Élément 2: Opérateur de filtre *EQ, *NE
FTRUSER Filtrer par profil utilisateur Values (jusqu'à 10 répétitions): Liste d'éléments Facultatif
Élément 1: Utilisat Nom générique, nom, *NONE, *CURRENT
Élément 2: Opérateur de filtre *EQ, *NE
FTRINTNETA Filtrer par adresse Internet Valeur caractère, *NONE, *LOCAL Facultatif
FTRLCLPORT Filtrer par numéro port local 0-65535, *NONE Facultatif
FTRQRYGOVR Filtrer par fct régul analyse *NONE, *ALL, *COND Facultatif
FTRCLTACG Filtrer par identif. comptable Valeur caractère, *NONE Facultatif
FTRCLTAPP Filtrer par nom d'application Valeur caractère, *NONE Facultatif
FTRCLTPGM Filtrer par nom de programme Valeur caractère, *NONE Facultatif
FTRCLTUSR Filtrer par ID utilis. client Valeur caractère, *NONE Facultatif
FTRCLTWS Filtrer par poste de travail Valeur caractère, *NONE Facultatif
FTRSQLCODE Filtrer par SQLCODE -99999-99999, *NONE, *NONZERO, *ERROR, *WARN Facultatif
HOSTVAR Valeurs de variables hôte *BASIC, *SECURE, *CONDENSED Facultatif
COMMENT Commentaire Valeur caractère, *BLANK Facultatif

Fichier recevant la sortie (OUTFILE)

Indique le fichier dans lequel doivent être écrites les statistiques des performances. Si le fichier n'existe pas, il est créé sur le modèle du fichier QAQQDBMN de la bibliothèque QSYS. S'il existe déjà, les droits publics sur le fichier sont les mêmes que le droit de création de la pour la bibliothèque contenant le fichier. Pour afficher ce droit, utilisez la commande DSPLIBD (Afficher une description de bibliothèque).

Ce paramètre est obligatoire.

Qualificatif 1 : Fichier recevant la sortie

nom
Indiquez le nom du fichier.

Qualificatif 2 : Biblio

*LIBL
La recherche porte sur toutes les bibliothèques de la liste des bibliothèques du travail jusqu'à ce que la première occurrence soit trouvée.
*CURLIB
Le système effectue la recherche dans la bibliothèque en cours du travail. Si celle-ci n'est pas précisée, QGPL est prise par défaut.
nom
Indiquez le nom de la bibliothèque sur laquelle doit porter la recherche.

Options pour membre de sortie (OUTMBR)

Indique le nom du membre de fichier base de données dans lequel est envoyée la sortie de la commande.

Elément 1 : Membre recevant la sortie

*FIRST
Le premier membre du fichier reçoit la sortie. Si OUTMBR(*FIRST) est indiqué et que le membre n'existe pas, le système en crée un du nom indiqué à l'invite Fichier recevant la sortie (paramètre OUTFILE). Si le membre existe, vous avez la possibilité d'ajouter de nouveaux enregistrements à la fin du membre existant ou de le mettre à blanc et de lui ajouter les nouveaux enregistrements.
nom
Indiquez le nom du membre de fichier destiné à recevoir la sortie. Si aucun membre de ce nom n'existe, le système le crée.

Elément 2 : Remplacement ou ajout enregs

*REPLACE
Le système met à blanc le membre existant et ajoute les nouveaux enregistrements.
*ADD
Le système ajoute les nouveaux enregistrements à la suite des enregistrements existants.

Travail (JOB)

Indique le travail (ou les travaux) pour lequel le moniteur de base de données doit démarrer.

Valeurs uniques

*
Le moniteur de base de données du travail exécutant la commande STRDBMON doit être démarré.
*ALL
Tous les travaux du système sont contrôlés, y compris ceux placés en files d'attente de travaux.

Elément 1 : Travail

Qualificatif 1 : Travail

nom
Indiquez le nom du travail dont le moniteur de base de données doit être démarré. Si aucun nom d'utilisateur du travail ni aucun qualificatif de travail n'est indiqué, le nom du travail non qualifié est recherché dans tous les travaux en cours sur le système. Si plusieurs copies du travail recherché sont trouvées, vous devez indiquer un nom d'utilisateur du travail ou un numéro de travail pour identifier formellement le travail à surveiller.
nom-générique
Indiquez le nom générique du travail à surveiller. Tous les travaux correspondant au nom indiqué sont contrôlés, y compris ceux qui se trouvent dans les files d'attente.

Qualificatif 2 : Utilisat

nom
Indiquez le nom de l'utilisateur du travail dont le moniteur de base de données doit être démarré.
nom-générique
Indiquez le nom générique de l'utilisateur dont les travaux doivent être contrôlés. Tous les travaux correspondant au nom indiqué sont contrôlés, y compris ceux qui se trouvent dans les files d'attente.

Qualificatif 3 : Numéro

000000 à 999999
Indiquez le numéro du travail pour lequel le moniteur de base de données doivent être démarré.

Elément 2 : Opérateur de filtre

L'opérateur de filtre permet d'éviter d'avoir à démarrer un moniteur de base de données pour les travaux spécifiés.

*EQ
Le moniteur de base de données démarrera pour les travaux spécifiés.
*NE
Le moniteur de base de données démarrera pour tous les travaux qui sont différents de la règle du nom de travail. Par exemple, pour démarrer un moniteur de base de données pour tous les travaux dont le nom ne commence pas par QZDA, utilisez l'opérateur *NE.

STRDBMON OUTFILE(MONLIB/DBMONFILE) JOB(*ALL/*ALL/QZDA* *NE)

Type d'enregistrement (TYPE)

Indique le type d'enregistrement base de données à placer dans le fichier de sortie.

*DETAIL
Les enregistrements détaillés et les enregistrements de base du moniteur base de données sont collectés. L'enregistrement détaillé (QQQ3019) du moniteur base de données indique le nombre d'accès en lecture et en écriture synchrones et asynchrones, ainsi que d'autres chiffres relatifs à la base de données.
*BASIC
Seuls les enregistrements de base du moniteur base de données sont collectés.
*SUMMARY
Seuls les enregistrements de base du moniteur base de données sont collectés.

Forcer écriture enregistrement (FRCRCD)

Indique le nombre d'enregistrements à conserver dans la mémoire tampon avant que le système ne force l'écriture de ces enregistrements dans le fichier lors de l'exécution avec un moniteur privé.

*CALC
Le système calcule le nombre d'enregistrements à conserver dans la mémoire tampon.
nombre-enregistrements
Indiquez le nombre d'enregistrements à conserver. Ce nombre doit être compris entre 0 et 32767.

Nombre initial d'enreg (INLNBRRCD)

Indique le nombre d'enregistrements pouvant être introduits dans le fichier de moniteur avant une extension automatique.

*NONE
Il n'a pas été indiqué de nombre initial d'enregistrements.
nombre-enregistrements
Indiquez le nombre d'enregistrements pouvant être introduits dans le fichier de moniteur avant une extension automatique. Les valeurs admises sont comprises entre 0 et 2147483646.

Seuil de phase d'exécution (RUNTHLD)

Indique un seuil de filtrage d'après la phase d'exécution estimée de l'instruction SQL, tel que calculé par l'optimiseur de requêtes. Les enregistrements du moniteur ne sont créés que lorsque la phase d'exécution estimée des instructions SQL correspond au seuil défini ou le dépasse. Si la phase d'exécution estimée d'une instruction SQL est inférieure au seuil, vous n'obtenez aucun enregistrement.

*NONE
Le seuil de la phase d'exécution n'est pas défini. Tous les enregistrements du moniteur seront générés.
Phase d'exécution-seuil
Indiquez le seuil de la phase d'exécution (en secondes). Les enregistrements du moniteur sont créés lorsque la phase d'exécution estimée des instructions SQL correspond (ou dépasse) au seuil défini.

Seuil mémoire (STGTHLD)

Indique un seuil de filtrage calculé d'après l'utilisation de la mémoire temporaire estimée de l'instruction SQL. Les enregistrements du moniteur ne sont créés que lorsque la mémoire temporaire estimée des instructions SQL correspond au seuil défini (ou le dépasse). Si la mémoire temporaire estimée d'une instruction SQL est inférieure au seuil, vous n'obtenez aucun enregistrement.

*NONE
Le seuil de la mémoire n'est pas défini. Tous les enregistrements du moniteur seront générés.
seuil-mémoire
Indiquez le seuil de la mémoire (en mégaoctets). Les enregistrements du moniteur sont créés lorsque la mémoire temporaire estimée des instructions SQL correspond au seuil défini (ou le dépasse).

Inclure le SQL système (INCSYSSQL)

Indique si les enregistrements du moniteur doivent être créés pour des instructions SQL générées par le système. Ces enregistrements sont toujours créés lorsque les instructions SQL sont définies par l'utilisateur. Cette option permet d'indiquer que les enregistrements du moniteur doivent également être générés dans le cas d'instructions SQL créées en interne par le système.

*NO
Aucun enregistrement n'est créé pour des instructions SQL générées par le système. Ces enregistrements ne sont créés que lorsque les instructions SQL sont définies par l'utilisateur.
*YES
Les enregistrements du moniteur sont créés pour les instructions SQL générées par le système et pour celles qui sont définies par l'utilisateur.
*INI
Les enregistrements du moniteur seront générés d'après la valeur de l'option SQL_DBMON_OUTPUT dans le fichier INI sélectionné. Une valeur *USER ou *DEFAULT permet uniquement de créer des enregistrements pour les instructions SQL définies par l'utilisateur. Une valeur *SYSTEM permet uniquement de créer des enregistrements pour les instructions SQL générées par le système. Une valeur *ALL permet de créer des enregistrements pour les instructions SQL générées par le système et pour celles qui sont définies par l'utilisateur. Lorsque le fichier INI n'existe pas, la valeur par défaut *NO est associée à l'option INCSYSSQL.

Filtrer par fich base données (FTRFILE)

Désigne un filtre en fonction du nom du fichier et de la bibliothèque employée dans l'instruction SQL. Les fichiers utilisés dans les instructions SQL seront comparés aux fichiers spécifiés. Le nom du fichier indiqué peut être abrégé (10 octets) ou complet (256 octets).

Valeurs uniques

*NONE
Aucun filtrage par fichier n'est défini.

Elément 1 : Fichier base de données

Qualificatif 1 : Fichier base de données

*ALL
Les enregistrements du moniteur sont créés pour toutes les instructions SQL qui emploient un des fichiers dans la bibliothèque indiquée lorsque l'opérateur de filtre *EQ est utilisé. Si aucun des fichiers utilisés dans une instruction SQL ne provient de la bibliothèque désignée, aucun enregistrement du n'est créé.
nom
Les fichiers utilisés dans les instructions SQL seront comparés aux fichiers spécifiés pour déterminer si un enregistrement du moniteur doit être créé.
nom-générique
Les fichiers utilisés dans les instructions SQL seront comparés aux fichiers dont le nom commence par le préfixe spécifié pour déterminer si un enregistrement du moniteur doit être créé.

Qualificatif 2 : Biblio

nom
Les fichiers utilisés dans l'instruction SQL seront comparés aux fichiers de la bibliothèque spécifiée pour déterminer si un enregistrement du moniteur doit être créé.
nom-générique
Les fichiers utilisés dans l'instruction SQL seront comparés aux fichiers de la bibliothèque correspondant au préfixe générique pour déterminer si un enregistrement du moniteur doit être créé.

Elément 2 : Opérateur de filtre

Spécifie la règle d'application de chaque filtre. L'opérateur de filtre permet d'effectuer un filtrage sur des valeurs concordantes ou non concordantes. Si plusieurs valeurs de filtre sont spécifiées, les filtres utilisant *EQ sont combinées de façon logique avec un prédicat OR tandis que les filtres utilisant *NE sont combinés de façon logique avec un prédicat AND.

*EQ
Les enregistrements du moniteur sont créés lorsque le critère de filtre produit un résultat concordant.

Par exemple, pour capturer les instructions SQL exécutés à l'aide du fichier LIB41/TABLE01, utilisez l'opérateur *EQ.

STRDBMON OUTFILE(MONLIB/DBMONFILE) JOB(*ALL/*ALL/ALL) FTRFILE((LIB41/TABLE01 *EQ))

*NE
Les enregistrements du moniteur sont créés lorsque le critère de filtre n'est pas égal aux fichiers spécifiés dans l'instruction SQL.

Par exemple, pour capturer les instructions SQL exécutés à l'aide de fichiers tels que LIB41/TABLE*, mais éviter de capturer les instructions dans le cas du fichier LIB41/TABLE01, utilisez les opérateurs *EQ et *NE.

STRDBMON OUTFILE(MONLIB/DBMONFILE) JOB(*ALL/*ALL/*ALL) FTRFILE((LIB41/TABLE* *EQ) (LIB41/TABLE01 *NE))

Filtrer par profil utilisateur (FTRUSER)

Définit un filtre d'après le nom d'un profil utilisateur ou de groupe. L'utilisateur exécutant les instructions SQL sera comparé au critère de filtre du profil pour déterminer un enregistrement du moniteur doit être créé.

Elément 1 : Utilisat

*NONE
Aucun filtrage par utilisateur n'est défini.
*CURRENT
Le profil utilisateur de celui qui appelle la commande STRDBMON est celui de l'utilisateur utilisé pour la comparaison avec l'utilisateur exécutant l'instruction SQL pour déterminer si un enregistrement du moniteur doit être créé.
nom-utilisateur:
L'utilisateur exécutant les instructions SQL sera comparé au profil utilisateur ou de groupe spécifié pour déterminer si un enregistrement du moniteur doit être créé.
nom-utilisateur-générique
L'utilisateur exécutant les instructions SQL sera comparé à tous les profils utilisateur ou de groupe dont le nom commence par le préfixe spécifié pour déterminer si un enregistrement du moniteur doit être créé.

Elément 2 : Opérateur de filtre

Spécifie la règle d'application de chaque filtre. L'opérateur de filtre permet d'effectuer un filtrage sur des valeurs concordantes ou non concordantes. Si plusieurs valeurs de filtre sont spécifiées, les filtres utilisant *EQ sont combinées de façon logique avec un prédicat OR tandis que les filtres utilisant *NE sont combinés de façon logique avec un prédicat AND.

*EQ
Les enregistrements du moniteur sont créés lorsque le critère de filtre produit un résultat concordant.

Par exemple, pour capturer les instructions SQL exécutées de façon interactive par un utilisateur qui est membre du profil de groupe AUDITGROUP, utilisez l'opérateur *EQ.

STRDBMON OUTFILE(MONLIB/PRIVUSERS) JOB(*ALL/*ALL/QPADEV*) FTRUSER((AUDITGROUP *EQ))

*NE
Les enregistrements du moniteur sont créés lorsque le critère de filtre n'est pas égal à l'utilisateur exécutant l'instruction SQL.

Par exemple, pour capturer les instructions SQL exécutés par un utilisateur qui est membre du profil de groupe AUDITGROUP, mais éviter de capturer l'instruction si l'utilisateur est DEVLPR1, utilisez à la fois les opérations *EQ et *NE.

STRDBMON OUTFILE(MONLIB/PRIVUSERS) JOB(*ALL/*ALL/QPADEV*) FTRUSER((AUDITGROUP *EQ) (DEVLPR1 *NE))

Filtrer par adresse Internet (FTRINTNETA)

Indique le filtrage basé sur l'adresse TCP/IP du client ou le nom d'hôte TCP/IP du client. Les enregistrements du moniteur ne sont créés que pour les travaux exécutés pour le compte de l'adresse ou du nom d'hôte TCP/IP indiqué.

*NONE
Aucun filtrage par adresses Internet n'est défini.
*LOCAL
Les enregistrements du moniteur sont créés pour les travaux n'ayant aucune association avec le protocole TCP/IP du client.
valeur-caractère
Les enregistrements du moniteur sont créés pour les travaux du serveur de base de données TCP/IP. Les travaux nommés QRWTSRVR et QZDASOINIT en sont des exemples.
  1. Adresse IP (version 4) en notation décimale à point. Indiquez une adresse IP (version 4) au format nnn.nnn.nnn.nnn, où chaque nnn représente un nombre compris entre 0 et 255.
  2. Adresse IP (version 6) en notation hexadécimale à deux-points. Indiquez une adresse IP (version 6) au format xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx, où chaque xxxx représente un nombre hexadécimal compris entre 0 et FFFF. L'adresse IP version 6 inclut le format d'adresse IPv6 mappé IPv4 (par exemple, ::FFFF:1.2.3.4). Pour l'adresse IP version 6, le format compressé de l'adresse est admis.
  3. Nom de domaine d'hôte IP. Indiquez un nom de domaine d'hôte Internet comportant jusqu'à 254 caractères.

Filtrer par numéro port local (FTRLCLPORT)

Indique le filtrage basé sur le numéro de port TCP/IP local. Les enregistrements du moniteur sont créés pour les travaux du serveur de base de données TCP/IP exécutés pour le compte du port TCP/IP local indiqué. Les travaux nommés QRWTSRVR et QZDASOINIT en sont des exemples.

*NONE
Aucun filtrage par port n'est défini.
1-65535
Indiquez le numéro du port local pour lequel les enregistrements du moniteur doivent être créés.

Filtrer par fct régul analyse (FTRQRYGOVR)

Indique le filtrage basé sur les limites de la fonction de régulation de requête.

*NONE
Aucun filtrage par fonction de régulation de requête n'est défini.
*ALL
Les enregistrements du moniteur sont regroupés lorsque la limite de la fonction de régulation de requête est dépassée, que la requête soit annulée ou non.
*COND
Les enregistrements du moniteur sont regroupés lorsqu'une limite de la fonction de régulation de requête est dépassée d'après l'un des critères ci-après :
  1. Le programme d'exit de la fonction de régulation de requête renvoie 2 : la limite dépassée est ignorée mais les enregistrements du moniteur de base de données sont tout de même être regroupés.
  2. Le programme d'exit de la fonction de régulation de requête renvoie 3 : la requête est annulée.
  3. Le programme d'exit de la fonction de régulation de requête renvoie 0 : le message d'interrogation est émis et sa réponse est l'annulation de la requête.
  4. Le programme d'exit de la fonction de régulation de requête échoue et la réponse au message d'interrogation est l'annulation de la requête.
  5. Aucun programme d'exit de la fonction de régulation de requête n'est actif et la réponse au message d'interrogation est l'annulation de la requête.

    Pour plus d'informations sur le programme d'exit de la fonction de régulation de requête, consultez la documentation afférente (QIBM_QQQ_QUERY_GOVR) dans le IBM i Information Center, à l'adresse http://www.ibm.com/systems/i/infocenter/.

Filtrer par identif. comptable (FTRCLTACG)

Spécifie un filtre portant sur l'identifiant comptable du registre spécial client. Les enregistrements du moniteur sont créés pour les instructions SQL exécutées dès lors que l'identifiant comptable du registre spécial client correspond à cette valeur de filtre.

La valeur de l'identifiant comptable peut être modifiée via quatre interfaces. L'API SQLESETI (Définition des informations client) permet de modifier cette valeur, de même que la procédure SYSPROC.WLM_SET_CLIENT_INFO(). Par ailleurs, dans CLI, SQLSetConnectAttr() permet de définir l'attribut de connexion SQL_ATTR_INFO_ACCTSTR. Enfin, dans JDBC, la méthode de connexion setClientInfo peut être utilisée pour définir la propriété de connexion ClientAccounting.

*NONE
Il n'est pas défini de filtrage par identifiant comptable.
identifiant comptable
Les enregistrements du moniteur sont créés pour les instructions SQL exécutées dès lors que l'identifiant comptable du registre spécial client correspond à cette valeur de filtre.

Filtrer par nom d'application (FTRCLTAPP)

Spécifie un filtre portant sur le nom d'application du registre spécial client. Les enregistrements du moniteur sont créés pour les instructions SQL exécutées dès lors que le nom d'application du registre spécial client correspond à cette valeur de filtre.

La valeur de l'identifiant comptable peut être modifiée via quatre interfaces. L'API SQLESETI (Définition des informations client) permet de modifier cette valeur, de même que la procédure SYSPROC.WLM_SET_CLIENT_INFO(). Par ailleurs, dans CLI, SQLSetConnectAttr() permet de définir l'attribut de connexion SQL_ATTR_INFO_APPLNAME. Enfin, dans JDBC, la méthode de connexion setClientInfo peut être utilisée pour définir la propriété de connexion ApplicationName.

*NONE
Il n'est pas défini de filtrage par identifiant comptable.
nom d'application
Les enregistrements du moniteur sont créés pour les instructions SQL exécutées dès lors que le nom d'application du registre spécial client correspond à cette valeur de filtre.

Filtrer par nom de programme (FTRCLTPGM)

Spécifie un filtre portant sur l'ID programme du registre spécial client. Les enregistrements du moniteur sont créés pour les instructions SQL exécutées dès lors que l'ID programme du registre spécial client correspond à cette valeur de filtre.

La valeur de l'identifiant comptable peut être modifiée via quatre interfaces. L'API SQLESETI (Définition des informations client) permet de modifier cette valeur, de même que la procédure SYSPROC.WLM_SET_CLIENT_INFO(). Par ailleurs, dans CLI, SQLSetConnectAttr() permet de définir l'attribut de connexion SQL_ATTR_INFO_PROGRAMID. Enfin, dans JDBC, la méthode de connexion setClientInfo peut être utilisée pour définir la propriété de connexion ClientProgramID.

*NONE
Il n'est pas défini de filtrage par identifiant comptable.
nom d'application
Les enregistrements du moniteur sont créés pour les instructions SQL exécutées dès lors que l'ID programme du registre spécial client correspond à cette valeur de filtre.

Filtrer par ID utilis. client (FTRCLTUSR)

Spécifie un filtre portant sur l'ID utilisateur du registre spécial client. Les enregistrements du moniteur sont créés pour les instructions SQL exécutées dès lors que l'ID utilisateur du registre spécial client correspond à cette valeur de filtre.

La valeur de l'identifiant comptable peut être modifiée via quatre interfaces. L'API SQLESETI (Définition des informations client) permet de modifier cette valeur, de même que la procédure SYSPROC.WLM_SET_CLIENT_INFO(). Par ailleurs, dans CLI, SQLSetConnectAttr() permet de définir l'attribut de connexion SQL_ATTR_INFO_USERID. Enfin, dans JDBC, la méthode de connexion setClientInfo peut être utilisée pour définir la propriété de connexion ClientUser.

*NONE
Il n'est pas défini de filtrage par identifiant comptable.
nom d'application
Les enregistrements du moniteur sont créés pour les instructions SQL exécutées dès lors que l'ID utilisateur du registre spécial client correspond à cette valeur de filtre.

Filtrer par poste de travail (FTRCLTWS)

Spécifie un filtre portant sur le nom de poste de travail du registre spécial client. Les enregistrements du moniteur sont créés pour les instructions SQL exécutées dès lors que le nom de poste de travail du registre spécial client correspond à cette valeur de filtre.

La valeur de l'identifiant comptable peut être modifiée via quatre interfaces. L'API SQLESETI (Définition des informations client) permet de modifier cette valeur, de même que la procédure SYSPROC.WLM_SET_CLIENT_INFO(). Par ailleurs, dans CLI, SQLSetConnectAttr() permet de définir l'attribut de connexion SQL_ATTR_INFO_WRKSTNNAME. Enfin, dans JDBC, la méthode de connexion setClientInfo peut être utilisée pour définir la propriété de connexion ClientHostName.

*NONE
Il n'est pas défini de filtrage par identifiant comptable.
nom d'application
Les enregistrements du moniteur sont créés pour les instructions SQL exécutées dès lors que le nom de poste de travail du registre spécial client correspond à cette valeur de filtre.

Filtrer par SQLCODE (FTRSQLCODE)

Spécifie un filtre portant sur les résultats de l'exécution de l'instruction SQL. Ce filtre permet de collecter des enregistrements de moniteur en fonction des résultats des instructions SQL.

*NONE
Aucun filtrage par SQLCODE n'est défini.
*NONZERO
Les instructions SQL dont l'exécution se termine avec un SQLCODE différent de zéro sont collectées. Lorsque le SQLCODE = 0, cela signifie que l'instruction SQL s'est terminée avec une réussite non qualifiée.
*ERROR
Les instructions SQL dont l'exécution se termine avec un SQLCODE inférieur à zéro sont collectées. Lorsque le SQLCODE est inférieur à 0, cela signifie que l'instruction SQL a échoué.
*WARN
Les instructions SQL dont l'exécution se termine avec un SQLCODE supérieur à zéro sont collectées. Lorsque le SQLCODE est supérieur à 0, cela signifie que l'instruction SQL a abouti avec une condition d'avertissement.
-99999-99999
Les enregistrements du moniteur ne sont créés que lorsque les instructions SQL se terminent avec un SQLCODE qui correspond exactement à la valeur spécifiée.

Rétention données moniteur sys (HOSTVAR)

Indique de quelle manière les valeurs de variable hôte sont gérées dans les enregistrements du moniteur base de données.

*BASIC
Les valeurs de variable hôte sont écrites dans l'enregistrement du moniteur de base de données QQQ3010.
*SECURE
Aucune valeur de variable hôte n'est capturée. Cette option peut être utilisée pour éviter de capturer des données sensibles dans la sortie du moniteur. Si vous sélectionnez cette option, toute personne utilisant la sortie du moniteur aura moins de données à gérer. Cette option s'applique aux valeurs de variable et de paramètre hôte explicitement codées ainsi qu'aux variables générées en raison de la génération implicite de marqueurs de paramètres pour les valeurs littérales.
*CONDENSED
Au lieu de capturer les valeurs de variable hôte dans l'enregistrement du moniteur de base de données QQQ3010, les valeurs de variable hôte sont écrites dans la colonne QQDBCLOB1 dans l'enregistrement du moniteur de base de données QQQ1000. Cette option permet une capture plus efficace des valeurs de variable hôte.

Commentaire (COMMENT)

Description définie par l'utilisateur associée à l'enregistrement du moniteur base de données. Cette description est stockée dans l'enregistrement doté de l'ID 3018.

*BLANK
Aucun texte n'est indiqué.
valeur-caractère
Indiquez un texte de 100 caractères au maximum.

Exemples

Exemple 1: Démarrage du moniteur public

STRDBMON   OUTFILE(QGPL/FILE1)  OUTMBR(MEMBER1 *ADD)
           JOB(*ALL)  FRCRCD(10)

Cette commande démarre le moniteur base de données pour tous les travaux sur le système. Les statistiques de performance sont ajoutées au membre MEMBER1 du fichier FILE1 de la bibliothèque QGPL. Dix enregistrements sont conservés en mémoire tampon avant d'être écrits dans le fichier.

Exemple 2: Démarrage du moniteur privé

STRDBMON   OUTFILE(*LIBL/FILE3)  OUTMBR(MEMBER2)
           JOB(134543/QPGMR/DSP01)  FRCRCD(20)

Cette commande démarre le moniteur base de données pour le numéro de travail 134543. Le nom du travail, démarré par l'utilisateur QPGMR, est DSP01. Les statistiques de performance sont ajoutées au membre MEMBER2 du fichier FILE3. Vingt enregistrements sont conservés en mémoire tampon avant d'être écrits dans le fichier.

Exemple 3: Démarrage du moniteur privé vers un fichier d'une bibliothèque d'un ASP indépendant

STRDBMON   OUTFILE(LIB41/DBMONFILE)  JOB(134543/QPGMR/DSP01)

Cette commande démarre le moniteur base de données pour le numéro de travail 134543. Le nom du travail, démarré par l'utilisateur QPGMR, est DSP01. Les statistiques de performance sont ajoutées au membre DBMONFILE (car OUTMBR n'a pas été indiqué) dans le fichier DBMONFILE de la bibliothèque LIB41. Cette bibliothèque peut exister dans plusieurs pools de mémoire secondaire (ASP) indépendants ; la bibliothèque située dans espace de nom du travail de l'émetteur est systématiquement utilisée.

Exemple 4: Démarrage du moniteur public pour tous les travaux débutant par 'QZDA'

STRDBMON   OUTFILE(LIB41/DBMONFILE)  JOB(*ALL/*ALL/QZDA*)

Cette commande démarre le moniteur base de données pour tous les travaux sur le système. Les statistiques sur les performances (enregistrements du moniteur) sont associées au membre DBMONFILE (puisque OUTMBR n'est pas défini) dans le fichier DBMONFILE figurant dans la bibliothèque LIB41. Cette bibliothèque peut exister dans plusieurs pools de mémoire secondaire (ASP) indépendants ; la bibliothèque située dans espace de nom du travail de l'émetteur est systématiquement utilisée.

Exemple 5: Démarrage du moniteur public et filtrage d'instructions SQL exécutées pendant plus de 10 secondes

STRDBMON   OUTFILE(LIB41/DBMONFILE)  JOB(*ALL)  RUNTHLD(10)

Cette commande démarre le moniteur base de données pour tous les travaux. Les enregistrements du moniteur ne sont créés que lorsque la phase d'exécution estimée des instructions SQL atteint ou dépasse 10 secondes.

Exemple 6: Démarrage du moniteur public et filtrage d'instructions SQL dont la mémoire de travail estimée dépasse 200 Mo

STRDBMON   OUTFILE(LIB41/DBMONFILE)  JOB(*ALL)  STGTHLD(200)

Cette commande démarre le moniteur base de données pour tous les travaux. Les enregistrements du moniteur ne sont créés que lorsque la mémoire de travail estimée des instructions SQL atteint ou dépasse 200 mégaoctets.

Exemple 7: Démarrage du moniteur privé et filtrage sur un fichier spécifique

STRDBMON   OUTFILE(LIB41/DBMONFILE) JOB(*)
           FTRFILE(LIB41/TABLE1)

Cette commande démarre le moniteur base de données pour le travail en cours. Les enregistrements du moniteur ne sont créés que lorsque les instructions SQL utilisent le fichier LIB41/TABLE1.

Exemple 8: Démarrage du moniteur privé pour l'utilisateur en cours

STRDBMON   OUTFILE(LIB41/DBMONFILE)  JOB(*)  FTRUSER(*CURRENT)

Cette commande démarre le moniteur base de données pour le travail en cours. Les enregistrements du moniteur ne sont créés que lorsque les instructions SQL sont exécutées par l'utilisateur désigné.

Exemple 9: Démarrage du moniteur public pour les travaux débutant par 'QZDA' et filtrage du fichier pendant l'exécution

STRDBMON   OUTFILE(LIB41/DBMONFILE)  JOB(*ALL/*ALL/QZDA*)
           RUNTHLD(10)  FTRUSER(DEVLPR1)  FTRFILE(LIB41/TTT*)

Cette commande démarre le moniteur base de données pour tous les travaux dont les noms débutent par 'QZDA'. Les enregistrements du moniteur ne sont créés que lorsque les instructions SQL réunissent les conditions suivantes :

  • La phase d'exécution estimée (calculée par l'optimiseur de requête) atteint ou dépasse 10 secondes.
  • Exécution par l'utilisateur 'DEVLPR1'.
  • Tous les fichiers dont les noms débutent par 'TTT' et qui résident dans la bibliothèque LIB41.

Exemple 10: Démarrage du moniteur public et filtrage d'instructions SQL utilisant l'adresse Internet 9.10.111.77.

STRDBMON   OUTFILE(LIB41/DBMONFILE)  JOB(*ALL)
           FTRINTNETA(9.10.111.77)

Cette commande démarre le moniteur base de données pour tous les travaux. Les enregistrements du moniteur sont créés uniquement pour les travaux du serveur de base de données TCP/IP utilisant l'adresse IP du client (version 4) 9.10.111.77.

Exemple 11: Démarrage du moniteur public et filtrage d'instructions SQL dont un numéro de port est 8471

STRDBMON   OUTFILE(LIB41/DBMONFILE)  JOB(*ALL)  FTRLCLPORT(8471)

Cette commande démarre le moniteur base de données pour tous les travaux. Les enregistrements du moniteur sont créés uniquement pour les travaux du serveur de base de données TCP/IP utilisant le numéro de port local 8471.

Exemple 12: Démarrage du moniteur public à partir des commentaires en retour de la fonction de régulation de requête

CHGSYSVAL QQRYTIMLMT(200)
STRDBMON   OUTFILE(LIB41/DBMONFILE) JOB(*ALL) FTRQRYGOVR(*COND)

Cette commande démarre le moniteur base de données pour tous les travaux dont la phase d'exécution estimée doit dépasser 200 secondes, en fonction de la réponse fournie à la fonction de régulation de requête. Dans cet exemple, les données sont regroupées uniquement si la requête est annulée ou si un code retour de 2 est renvoyé par le programme d'exit de la fonction de régulation de requête. La requête peut être annulée par une réponse de l'utilisateur au message d'interrogation CPA4259 (émis lorsque la requête a dépassé les limites de la fonction de régulation de requête), ou par la logique du programme contenue dans le programme d'exit de la fonction de régulation de requête enregistrée.

Exemple 13 : Démarrage du moniteur public et filtrage d'instructions SQL exécutées à partir du composant Exécution de scripts SQL d'IBM i Access Client Solutions

STRDBMON   OUTFILE(LIB41/DBMONFILE)  JOB(*ALL)
FTRCLTAPP('IBM i Access Client Solutions - Exécution de scripts SQL')

Cette commande démarre le moniteur base de données pour tous les travaux. Les enregistrements du moniteur ne sont créés que pour les instructions pour lesquelles la valeur CLIENT_APPLNAME du registre spécial client est System i Navigator - Exécution de scripts SQL.

Exemple 14 : Démarrage du moniteur public et filtrage de l'utilisateur client dbmusr1

STRDBMON   OUTFILE(LIB41/DBMONFILE)  JOB(*ALL)
           FTRCLTUSR(dbmusr1)

Cette commande démarre le moniteur base de données pour tous les travaux. Les enregistrements du moniteur ne sont créés que pour les instructions pour lesquelles la valeur CLIENT_USERID du registre spécial client est dbmusr1.

Exemple 15 : Démarrage du moniteur public et filtrage d'instructions SQL à l'aide du paramètre FTRUSER

STRDBMON   OUTFILE(LIB41/DBMONFILE)  JOB(*ALL)
           FTRUSER((STC* *NE) (S*) (TS*) (TSA* *NE))

Cette commande démarre le moniteur base de données pour tous les travaux. Les enregistrements du moniteur ne sont créés que pour les instructions dont le profil utilisateur est équivalent d'un point de vue logique à : profil utilisateur NOT LIKE 'STC%' AND profil utilisateur NOT LIKE 'TSA%' AND (profil utilisateur LIKE 'S%' OR profil utilisateur LIKE 'TS%')

Messages d'erreur

Messages *ESCAPE

CPF1321
Travail &3/&2/&1 non trouvé.
CPF222E
Le droit spécial &1 est requis.
CPF4269
Non autorisé à l'objet &1 de &2 type *&3.
CPF436A
Format fichier &1 dans &2 incompatible avec fichier modèle.
CPF436B
&1 ne peut être indiquée au paramètre OUTFILE.
CPF436C
Le travail &4 fait déjà l'objet d'un contrôle.
CPF436E
Travail &1 utilisateur &2 numéro &3 inactif.
CPF43A2
L'adresse spécifiée au paramètre FTRINTNETA n'est pas admise.

Messages *STATUS

CPI436A
Moniteur base de données démarré pour travail &1, ID &2.

© Copyright IBM Corp. Texte d'aide reproduit à des fins de formation.