Console : incluse dans le périmètre, globale

  • Rversion finale: Yokohama
  • Mis à jour 30 janv. 2025
  • 24 minutes de lecture
  • L’API de la console fournit des méthodes pour journaliser les messages dans le journal système, créer et arrêter des minuteurs, créer et journaliser des compteurs, journaliser les traces de pile et regrouper/organiser le contenu connexe.

    Consoler Les méthodes API fournissent les mêmes fonctionnalités de journalisation que l’API système Glide (par exemple, gs.info, gs.warn et gs.debug), mais permettent une utilisation plus réflexe pour les développeurs qui sont familiarisés avec la journalisation des messages à l’aide de méthodes de console. Les méthodes API console et API système Glide peuvent être utilisées sur le serveur.

    Toutes les méthodes de l’API de la console sont statiques et sont une ServiceNow® implémentation de l’API de la console de (Microsoft Developer Network) MDN. Cette API est fournie dans le cadre du ServiceNow système de base et ne nécessite pas de module d’extension pour y accéder globalement. Pour utiliser cette classe dans une application incluse dans le périmètre, utilisez l’identificateur d’espace de noms sn_console. Activez le module d’extension Console (com.glide.console) pour accéder à l’API de la console .

    Options de connexion

    Les journaux générés à l’aide des méthodes de l’API de la console , telles que assert(), error(), debug(), warn(), info() et log(), sont consignés dans les journaux système. Plus précisément, vous pouvez trouver les journaux système dans l’interface utilisateur en accédant à Tout > Journaux système > Journal système. Vous pouvez choisir d’afficher tous les journaux ou des types de journaux spécifiques tels que les journaux d’application, les erreurs, les instructions de journal de script, etc. sous cet élément de menu. Le filtrage de la colonne Source dans la vue Tous les journaux peut vous aider à localiser vos entrées plus rapidement.

    Substitutions de chaînes

    Vous pouvez utiliser zéro ou plusieurs chaînes de substitution comme premier paramètre dans de nombreuses méthodes d’API de console, en particulier celles qui vous permettent d’enregistrer des messages tels que assert(), error(), debug(), warn(), info() et log().

    Les chaînes de substitution dans l’API de la console sont des espaces réservés que vous utilisez dans un message de journal pour insérer dynamiquement des valeurs, telles que des chaînes ou des nombres. Lorsque le code s’exécute, ces espaces réservés sont remplacés par des valeurs réelles que vous transmettez comme arguments supplémentaires, dans l’ordre dans lequel ils sont fournis. Ils rendent vos logs plus flexibles et lisibles sans avoir à concaténer les chaînes manuellement.

    Chaînes de substitution courantes :
    • %s : insère une chaîne.
    • %d ou %i : insère un nombre (entier ou décimal).
    • %f : insère un nombre à virgule flottante.
    • %o : Insère un objet.
    • %c : applique des styles CSS au journal (utile pour styliser la sortie de la console).

    Voici un exemple de script simple utilisant des chaînes de substitution :

    const name = "Alex";
    const age = 25;
    
    console.log("Hello, my name is %s and I am %d years old.", name, age);

    Exemple de sortie :

    Hello, my name is Alex and I am 25 years old.

    Voici un exemple d’utilisation de chaînes de substitution avec le style CSS :

    const user = { name: "Alex", role: "Developer" };
    console.log("User info: %o", user); // Logs the object
    console.log("%cStyled message", "color: blue; font-weight: bold;"); // Adds styles
    
    La sortie met en forme le message Informations sur l’utilisateur : { name : « Alex », role : « Developer » } en bleu et en gras.

    Utilisation de minuteurs

    Vous pouvez utiliser les minuteurs de l’API de la console pour calculer la durée d’une opération spécifique. Pour démarrer un minuteur, appelez-le Console : time(étiquette de chaîne) et attribuez-lui un nom à l’aide du label paramètre. Vous pouvez avoir un maximum de 10 000 minuteurs par page. Pour arrêter un minuteur et obtenir le temps écoulé en millisecondes, appelez Console : timeEnd(étiquette de chaîne) en transmettant le nom du minuteur comme paramètre.

    Par exemple, vous pouvez démarrer un minuteur pour mesurer le temps qui s’écoule en appelant time(« Process Duration »), puis appeler timeEnd(« Process Duration »). De plus, le code calcule et génère le temps écoulé depuis le début du minuteur et lorsque les première et deuxième actions ont été effectuées en transmettant Console : timeLog(String label, Object valN) le script.

    console.time("Process Duration");
    
    alert("Step 1: Click to continue."); // Simulates the first action
    console.timeLog("Process Duration", "After Step 1");
    
    alert("Step 2: Do other actions"); // Simulates additional actions
    console.timeLog("Process Duration", "After Step 2");
    
    console.timeEnd("Process Duration");
    Sortie :
    • Après la première alerte :
      Process Duration: 2.345ms After Step 1
    • Après la deuxième alerte :
      Process Duration: 7.890ms After Step 2
    • Lorsque le minuteur se termine :
      Process Duration: 10.123ms

    Console - assert(assertion booléenne, objet val1... valN, String msg, String subst1... substN)

    Consigne un message d’erreur dans les journaux système si l’assertion est fausse. Cette méthode ne fait rien si l’assertion est vraie.

    Tableau 1. Paramètres
    Nom Type Description
    assertion Booléen Facultatif. Marqueur indiquant s’il faut consigner ou non un message générique indiquant un échec d’assertion dans les journaux système.
    Valeurs valides :
    • true : ne consigne pas le message d’échec de l’assertion.
    • faux : consigne le message d’échec de l’assertion.

    Valeur par défaut : false

    msg Chaîne Requis si n’est val1...valN pas utilisé. Message à afficher dans les journaux système en cas d’échec de l’assertion. Accepte une chaîne contenant zéro ou plusieurs valeurs de substitution qui peuvent être définies à l’aide du subst1 through substN paramètre.

    Pour plus d’informations, reportez-vous à la section 'Substitutions de chaînes', reportez-vous à la section Console : incluse dans le périmètre, globale.

    subst1... substN Chaîne Facultatif. Valeurs JavaScript par lesquelles remplacer les chaînes de substitution dans msg. Ces valeurs sont journalisées ou affichées dans l’ordre dans lequel elles sont spécifiées. S’il y a plus de valeurs de substitution que de chaînes de substitution, les valeurs supplémentaires sont elles-mêmes écrites et ajoutées après le message (msg) de la même manière que lorsqu’il n’y a pas de chaîne de format.

    Pour plus d’informations, consultez « Utilisation des chaînes de substitution ».Console : incluse dans le périmètre, globale

    val1... valN Objet Requis si msg n’est pas transmis. Liste des valeurs JavaScript supplémentaires à ajouter après le message principal (msg) et qui sont séparées par un espace ou un autre délimiteur. Accepte tous les types de données JavaScript, y compris les chaînes ou les objets, et les génère dans l’ordre dans lequel ils sont spécifiés.
    Tableau 2. Renvoie
    Type Description
    Néant

    Assertion de base

    L’exemple suivant montre comment utiliser assert() pour enregistrer le message d’erreur « Math is broken ! » lorsque l’assertion (1 + 1 === 3) est fausse, et ne fait rien lorsque l’assertion (1 + 1 === 2) est vraie.

    console.assert(1 + 1 === 2, "This won't be logged."); // Assertion is true, nothing happens.
    console.assert(1 + 1 === 3, "Math is broken!");

    Sortie :

    "Math is broken!"

    Valeurs supplémentaires de journalisation

    L’exemple suivant transmet assert() avec des valeurs supplémentaires.

    let x = 5, y = 10;
    console.assert(x + y === 20, "Expected 20, got", x + y);

    Sortie :

    "Expected 20, got 15" // (because x + y is 15)

    Remplacement de message

    L’exemple suivant transmet assert() avec des valeurs de substitution de chaînes.

    let expected = 20, actual = 15;
    console.assert(expected === actual, "Expected %d but got %d", expected, actual);

    Sortie :

    "Expected 20 but got 15"

    Console : count (étiquette de chaîne)

    Compte et consigne le nombre de fois où count() a été appelé avec une étiquette spécifiée.

    La méthode count() est utile pour suivre le nombre de fois où quelque chose se produit, comme le nombre de fois qu’un bloc de code est exécuté ou le nombre d’événements qui se produisent dans une application. Utilisez cette fonction Console : countReset(String label) pour réinitialiser un compteur avec une étiquette spécifique.

    Tableau 3. Paramètres
    Nom Type Description
    étiquette Chaîne Facultatif. Nom à donner au compteur. Les étiquettes sont sensibles à la casse et génèrent différents compteurs dans la sortie si les casses ne correspondent pas.

    Par défaut : si cette option n’est pas fournie, l’étiquette est définie sur « par défaut ».

    Tableau 4. Renvoie
    Type Description
    Néant

    L’exemple suivant montre à quoi ressemble la sortie chaque fois que la méthode count() est appelée avec une étiquette (par exemple, 'apple' ou 'banana'). Le nombre est suivi séparément pour chaque étiquette.

    console.count('apple');
    console.count('banana');
    console.count('apple');
    console.count('apple');
    console.count('banana');

    Sortie :

    apple: 1
    banana: 1
    apple: 2
    apple: 3
    banana: 2

    L’exemple count() suivant montre à quoi ressemble la sortie lorsqu’une étiquette de compteur n’est pas fournie, héritant d’une étiquette « par défaut ».

    console.count();
    console.count();
    console.count();

    Sortie :

    default: 1
    default: 2
    default: 3

    Console : countReset(String label)

    Réinitialise le compteur spécifié à zéro.

    Tableau 5. Paramètres
    Nom Type Description
    étiquette Chaîne Facultatif. Nom du compteur défini à l’origine dans la Console : count (étiquette de chaîne) méthode que vous souhaitez remettre à zéro. Sensible à la casse.
    Par défaut : réinitialise le compteur par défaut à zéro.
    Remarque :
    Un compteur reçoit une étiquette par défaut lorsqu’un nouveau compteur est défini à l’aide de count() sans étiquette définie. Reportez-vous à la rubrique Console : count (étiquette de chaîne) pour en savoir plus.
    Tableau 6. Renvoie
    Type Description
    Néant

    L’exemple suivant montre comment réinitialiser le compteur associé à la 5e itération de l’étiquette par défaut :

    function greet(user) {
      console.count();
      return 'hi ${user}'
    }
    
    greet("bob");
    greet("alice");
    greet("alice");
    console.count();
    console.countReset();

    Sortie :

    "default: 1"
    "default: 2"
    "default: 3"
    "default: 4"
    "default: 0"

    Dans l’exemple suivant, si vous transmettez la variable user en tant qu’argument d’étiquette avec la chaîne « bob » à la première invocation de console.count() et la chaîne « alice » à la seconde :

    function greet(user) {
      console.count(user);
      return'hi ${user}'
    }
    
    greet("bob");
    greet("alice");
    greet("alice");
    console.countReset("bob");
    console.count("alice");

    Sortie. Notez que la réinitialisation de la valeur du compteur « bob » ne modifie que la valeur de ce compteur. La valeur de « alice » est inchangée.

    "bob: 1"
    "alice: 1"
    "alice: 2"
    "bob: 0"
    "alice: 3"

    Console : debug(Objet val1... valN, String msg, String subst1... substN)

    Consigne ou génère un message de débogage dans le journal système au niveau du débogage.

    La méthode debug() permet la messagerie détaillée et est recommandée pour les messages de débogage de faible priorité ou moins critiques. Pour une messagerie de débogage de priorité supérieure, utilisez Console : log(Objet val1... val2, Chaîne msg, Chaîne subst1... subst2). Par exemple, vous pouvez utiliser cette méthode pour écrire des messages de débogage plus longs pour les développeurs internes sur les états ou les flux internes. Les messages de la méthode debug() peuvent se comporter différemment entre certains navigateurs.

    La méthode console.debug() consigne les messages dans les journaux système de l’instance ServiceNow® . Vous pouvez afficher ces journaux sur la ServiceNow® plateforme dans Journaux système > Tous les journaux ou journaux système > Déboguer.
    Remarque :
    Consoler Les méthodes API fournissent les mêmes fonctionnalités de journalisation que l’API système Glide (par exemple, gs.info, gs.warn et gs.debug), mais permettent une utilisation plus réflexe pour les développeurs qui sont familiarisés avec la journalisation des messages à l’aide de méthodes de console. Les méthodes API console et API système Glide peuvent être utilisées sur le serveur.
    Tableau 7. Paramètres
    Nom Type Description
    msg Chaîne Requis si val1...valN n’est pas transmis. Le message ou l’objet principal que vous souhaitez enregistrer dans les journaux système ou dans la sortie. Accepte une chaîne contenant zéro ou plusieurs valeurs de substitution qui peuvent être définies à l’aide du subst1 through substN paramètre.

    Pour plus d’informations, consultez « Utilisation des chaînes de substitution ».Console : incluse dans le périmètre, globale

    subst1... substN Chaîne Facultatif. Valeurs JavaScript par lesquelles remplacer les chaînes de substitution dans msg. Ces valeurs sont journalisées ou affichées dans l’ordre dans lequel elles sont spécifiées. S’il y a plus de valeurs de substitution que de chaînes de substitution, les valeurs supplémentaires sont elles-mêmes écrites et ajoutées après le message (msg) de la même manière que lorsqu’il n’y a pas de chaîne de format.

    Pour plus d’informations, consultez « Utilisation des chaînes de substitution ».Console : incluse dans le périmètre, globale

    val1... valN Objet Requis si msg n’est pas transmis. Liste des valeurs JavaScript supplémentaires à ajouter après le message principal (msg) et qui sont séparées par un espace ou un autre délimiteur. Accepte tous les types de données JavaScript, y compris les chaînes ou les objets, et les génère dans l’ordre dans lequel ils sont spécifiés.
    Tableau 8. Renvoie
    Type Description
    Néant

    Dans l’exemple suivant, console.debug() consigne les messages dans les journaux système de l’instance ServiceNow® .

    (function executeRule(current, previous /*null when async*/) {
        // Logging at different levels for debugging
        console.debug("Business rule triggered for record: " + current.getDisplayValue());
        
        // Example: Check and log a field value
        if (current.priority == 1) {
            console.debug("High-priority incident detected: " + current.number);
        } else {
            console.debug("Incident priority is not high. Priority: " + current.priority);
        }
    
        // Perform some logic
        if (current.state == 1) {
            current.state = 2;
            gs.debug("State updated from 'New' to 'In Progress' for record: " + current.number);
        }
    })(current, previous);

    Console : error(Object val1... valN, String msg, String subst1... subsN)

    Consigne un message dans le journal système au niveau d’erreur.

    Utilisez error() pour consigner les problèmes critiques qui nécessitent une attention immédiate, tels que des entrées non valides, des opérations ayant échoué, ou pour déboguer des comportements inattendus.

    Remarque :
    Consoler Les méthodes API fournissent les mêmes fonctionnalités de journalisation que l’API système Glide (par exemple, gs.info, gs.warn et gs.debug), mais permettent une utilisation plus réflexe pour les développeurs qui sont familiarisés avec la journalisation des messages à l’aide de méthodes de console. Les méthodes API console et API système Glide peuvent être utilisées sur le serveur.
    Tableau 9. Paramètres
    Nom Type Description
    msg Chaîne Requis si val1...valN n’est pas transmis. Le message ou l’objet principal que vous souhaitez enregistrer dans les journaux système ou dans la sortie. Accepte une chaîne contenant zéro ou plusieurs valeurs de substitution qui peuvent être définies à l’aide du subst1 through substN paramètre.

    Pour plus d’informations, consultez « Utilisation des chaînes de substitution ».Console : incluse dans le périmètre, globale

    subst1... substN Chaîne Facultatif. Valeurs JavaScript par lesquelles remplacer les chaînes de substitution dans msg. Ces valeurs sont journalisées ou affichées dans l’ordre dans lequel elles sont spécifiées. S’il y a plus de valeurs de substitution que de chaînes de substitution, les valeurs supplémentaires sont elles-mêmes écrites et ajoutées après le message (msg) de la même manière que lorsqu’il n’y a pas de chaîne de format.

    Pour plus d’informations, consultez « Utilisation des chaînes de substitution ».Console : incluse dans le périmètre, globale

    val1... valN Objet Requis si msg n’est pas transmis. Liste des valeurs JavaScript supplémentaires à ajouter après le message principal (msg) et qui sont séparées par un espace ou un autre délimiteur. Accepte tous les types de données JavaScript, y compris les chaînes ou les objets, et les génère dans l’ordre dans lequel ils sont spécifiés.
    Tableau 10. Renvoie
    Type Description
    Néant
    Dans l’exemple suivant, la sortie error() affiche respectivement le code suivant :
    • Le premier exemple affiche simplement « Une erreur s’est produite ! » dans un format de style d’erreur.
    • Le second affichera « Erreur dans le module : ModuleName ».
    • Le troisième affichera « Valeur inattendue : 42 ».
    console.error("An error occurred!");
    console.error("Error in module:", "ModuleName");
    console.error("Unexpected value: %d", 42);
    

    Console : group (étiquette de chaîne)

    Crée un nouveau groupe en ligne dans le journal système, où tous les messages suivants sont mis en retrait à un niveau supplémentaire jusqu’à ce que groupEnd() soit appelé. Utilisez cette méthode pour organiser visuellement et regrouper les messages connexes dans les journaux de sortie et les journaux système.

    Pour mettre fin à un regroupement, appelez la Console : groupEnd() méthode. La méthode groupEnd() diminue également l’indentation du groupe d’un niveau.

    Remarque :
    group() affiche tous les niveaux de regroupement dans la sortie et n’est ni réductible ni extensible.
    Tableau 11. Paramètres
    Nom Type Description
    étiquette Chaîne Facultatif. Nom de l’étiquette que le groupe doit afficher dans la sortie.

    Par défaut : Si vous ne passez pas d’étiquette, group() n’affiche pas de texte mais met toujours en retrait la nouvelle ligne vide d’un niveau.

    Tableau 12. Renvoie
    Type Description
    Néant

    L’exemple suivant passe log() pour créer un nouveau bloc imbriqué, puis group() pour journaliser les groupes indentés. Chaque appel suivant à group() met la ligne en retrait à un nouveau niveau. Le script appelle également groupEnd() pour terminer chaque groupe et réduire son retrait d’un niveau.

    console.log("Start logging...");
    console.group("Group 1");
    console.log("Inside Group 1 - Message 1");
    console.log("Inside Group 1 - Message 2");
    console.group("Nested Group");
    console.log("Inside Nested Group - Message 1");
    console.groupEnd();
    console.log("Back to Group 1 - Message 3");
    console.groupEnd();
    console.log("End logging...");

    Affichage/sortie :

    Start logging...
        Group 1
            Inside Group 1 - Message 1
            Inside Group 1 - Message 2
                Nested Group
                    Inside Nested Group - Message 1
            Back to Group 1 - Message 3
    End logging...

    L’exemple suivant montre comment les groupes sont mis en retrait lorsqu’une étiquette de groupe est définie :

    console.group("Group 1");
    console.log("in group 1");
    console.group();
    console.log("in group 2");

    Sortie :

    Group 1
      in group 1
         in group 2

    L’exemple suivant montre comment les groupes sont mis en retrait lorsqu’une étiquette de groupe n’est pas définie :

    console.group(); // no label passed
    console.log("in group 1");
    console.group();
    console.log("in group 2");

    Sortie :

    in group 1
    
         in group 2

    Console : groupEnd()

    Quitte le groupe en ligne actuel créé avec group() et diminue le retrait d’un niveau.

    Tableau 13. Paramètres
    Nom Type Description
    Aucun
    Tableau 14. Renvoie
    Type Description
    Néant

    L’exemple suivant crée un nouveau bloc imbriqué en appelant group() pour journaliser les niveaux indentés. Le script passe groupEnd() pour terminer le groupe et réduire son retrait d’un niveau.

    console.log("This is the outer level");
    console.group();
    console.log("Level 2");
    console.group();
    console.log("Level 3");
    console.warn("More of level 3");
    console.groupEnd();
    console.log("Back to level 2");
    console.groupEnd();
    console.log("Back to the outer level");

    Sortie :

    This is the outer level
        Level 2
            Level 3
            ⚠️ More of level 3
        Back to level 2
    Back to the outer level

    Console - info(Objet val1... valN, String msg, String subst1... substN)

    Consigne un message dans les journaux système au niveau des informations.

    Remarque :
    Consoler Les méthodes API fournissent les mêmes fonctionnalités de journalisation que l’API système Glide (par exemple, gs.info, gs.warn et gs.debug), mais permettent une utilisation plus réflexe pour les développeurs qui sont familiarisés avec la journalisation des messages à l’aide de méthodes de console. Les méthodes API console et API système Glide peuvent être utilisées sur le serveur.
    Tableau 15. Paramètres
    Nom Type Description
    msg Chaîne Requis si val1...valN n’est pas transmis. Le message ou l’objet principal que vous souhaitez enregistrer dans les journaux système ou dans la sortie. Accepte une chaîne contenant zéro ou plusieurs valeurs de substitution qui peuvent être définies à l’aide du subst1 through substN paramètre.

    Pour plus d’informations, consultez « Utilisation des chaînes de substitution ».Console : incluse dans le périmètre, globale

    subst1... substN Chaîne Facultatif. Valeurs JavaScript par lesquelles remplacer les chaînes de substitution dans msg. Ces valeurs sont journalisées ou affichées dans l’ordre dans lequel elles sont spécifiées. S’il y a plus de valeurs de substitution que de chaînes de substitution, les valeurs supplémentaires sont elles-mêmes écrites et ajoutées après le message (msg) de la même manière que lorsqu’il n’y a pas de chaîne de format.

    Pour plus d’informations, consultez « Utilisation des chaînes de substitution ».Console : incluse dans le périmètre, globale

    val1... valN Objet Requis si msg n’est pas transmis. Liste des valeurs JavaScript supplémentaires à ajouter après le message principal (msg) et qui sont séparées par un espace ou un autre délimiteur. Accepte tous les types de données JavaScript, y compris les chaînes ou les objets, et les génère dans l’ordre dans lequel ils sont spécifiés.
    Tableau 16. Renvoie
    Type Description
    Néant

    L’exemple suivant utilise la méthode info() pour enregistrer deux informations : le numéro d’enregistrement et la priorité du formulaire actuel. Cette méthode est utile pour les vérifications rapides lors du débogage ou de la vérification des données dans le formulaire.

    function onLoad() {
        console.info("Form loaded for record:", g_form.getValue("number")); // Log the record number
        console.info("Current priority is:", g_form.getValue("priority"));  // Log the priority
    }

    Console : log(Objet val1... val2, Chaîne msg, Chaîne subst1... subst2)

    Consigne un message dans les journaux système.

    Remarque :
    Consoler Les méthodes API fournissent les mêmes fonctionnalités de journalisation que l’API système Glide (par exemple, gs.info, gs.warn et gs.debug), mais permettent une utilisation plus réflexe pour les développeurs qui sont familiarisés avec la journalisation des messages à l’aide de méthodes de console. Les méthodes API console et API système Glide peuvent être utilisées sur le serveur.
    Tableau 17. Paramètres
    Nom Type Description
    msg Chaîne Requis si val1...valN n’est pas transmis. Le message ou l’objet principal que vous souhaitez enregistrer dans les journaux système ou dans la sortie. Accepte une chaîne contenant zéro ou plusieurs valeurs de substitution qui peuvent être définies à l’aide du subst1 through substN paramètre.

    Pour plus d’informations, consultez « Utilisation des chaînes de substitution ».Console : incluse dans le périmètre, globale

    subst1... substN Chaîne Facultatif. Valeurs JavaScript par lesquelles remplacer les chaînes de substitution dans msg. Ces valeurs sont journalisées ou affichées dans l’ordre dans lequel elles sont spécifiées. S’il y a plus de valeurs de substitution que de chaînes de substitution, les valeurs supplémentaires sont elles-mêmes écrites et ajoutées après le message (msg) de la même manière que lorsqu’il n’y a pas de chaîne de format.

    Pour plus d’informations, consultez « Utilisation des chaînes de substitution ».Console : incluse dans le périmètre, globale

    val1... valN Objet Requis si msg n’est pas transmis. Liste des valeurs JavaScript supplémentaires à ajouter après le message principal (msg) et qui sont séparées par un espace ou un autre délimiteur. Accepte tous les types de données JavaScript, y compris les chaînes ou les objets, et les génère dans l’ordre dans lequel ils sont spécifiés.
    Tableau 18. Renvoie
    Type Description
    Néant

    L’exemple suivant montre comment utiliser log() pour consigner le numéro d’enregistrement et l’état actuel du formulaire dans les journaux système.

    function onLoad() {
        console.log("Form loaded for record:", g_form.getValue("number")); // Log the record number
        console.log("Current state is:", g_form.getValue("state")); // Log the state
    }

    Console : time(étiquette de chaîne)

    Démarre un minuteur que vous pouvez utiliser pour suivre la durée d’une opération.

    Vous pouvez donner à chaque minuteur un nom unique et avoir jusqu’à 10 000 minuteurs en cours d’exécution sur une page donnée. Lorsque vous appelez la méthode timeEnd() de la console avec le même nom d’étiquette, le compteur affiche le temps en millisecondes qui s’est écoulé depuis le démarrage du minuteur. Utilisez la méthode timeLog() de la console pour consigner le temps écoulé capturé entre l’heure de début et l’heure de fin du minuteur.

    Pour obtenir des exemples sur l’utilisation de cette méthode avec d’autres méthodes d’API de console basées sur le temps, reportez-vous à la section « Utilisation de minuteurs » dans Console : incluse dans le périmètre, globale.

    Tableau 19. Paramètres
    Nom Type Description
    étiquette Chaîne Facultatif. Nom à donner au nouveau minuteur. Utilisez le même nom lors de l’appel Console : timeEnd(étiquette de chaîne) pour arrêter le minuteur et transmettre le temps écoulé à la console.

    Nombre maximal de minuteries : 10 000

    Par défaut : utilise l’étiquette « par défaut » si elle est omise.

    Tableau 20. Renvoie
    Type Description
    Néant

    Ce qui suit montre comment utiliser le temps (« étiquette ») pour démarrer un minuteur avec l’étiquette « étiquette ». La méthode console.timeEnd(« label ») arrête le minuteur avec la même étiquette et enregistre le temps écoulé. Dans cet exemple, il mesure le temps nécessaire pour récupérer et journaliser le numéro et la priorité de l’enregistrement.

    function onLoad() {
        console.time("Form load processing time"); // Start timing
    
        // Example: Simulate some processing
        var recordNumber = g_form.getValue("number");
        console.log("Record number is:", recordNumber);
    
        var priority = g_form.getValue("priority");
        console.log("Priority is:", priority);
    
        console.timeEnd("Form load processing time"); // End timing and log duration
    }

    Console : timeEnd(étiquette de chaîne)

    Arrête un minuteur spécifié qui a été démarré précédemment en appelant time().

    Pour obtenir des exemples sur l’utilisation de cette méthode avec d’autres méthodes d’API de console basées sur le temps, reportez-vous à la section « Utilisation de minuteurs » dans Console : incluse dans le périmètre, globale.

    Tableau 21. Paramètres
    Nom Type Description
    étiquette Chaîne Facultatif. Nom du minuteur à arrêter. Une fois arrêté, le temps écoulé s’affiche automatiquement dans la console avec un indicateur indiquant que le temps est terminé. Cette étiquette doit correspondre au minuteur spécifié dans le paramètre et est sensible à la Console : time(étiquette de chaîne) label casse.

    Par défaut : en cas d’omission, utilise l’étiquette « default ».

    Tableau 22. Renvoie
    Type Description
    Néant

    L’exemple suivant montre comment utiliser time(« label ») pour démarrer un minuteur avec l’étiquette « label ». La méthode console.timeEnd(« label ») arrête le minuteur avec la même étiquette ; console.log() journalise le temps écoulé. Dans cet exemple, il mesure le temps nécessaire pour récupérer et consigne le numéro et la priorité de l’enregistrement dans les journaux système.

    function onLoad() {
        console.time("Form load processing time"); // Start timing
    
        // Example: Simulate some processing
        var recordNumber = g_form.getValue("number");
        console.log("Record number is:", recordNumber);
    
        var priority = g_form.getValue("priority");
        console.log("Priority is:", priority);
    
        console.timeEnd("Form load processing time"); // End timing and log duration
    }

    Console : timeLog(String label, Object valN)

    Consigne la valeur actuelle d’un minuteur spécifié dans le journal système.

    Pour obtenir des exemples sur l’utilisation de cette méthode avec d’autres méthodes d’API de console basées sur le temps, reportez-vous à la section « Utilisation de minuteurs » dans Console : incluse dans le périmètre, globale.

    Tableau 23. Paramètres
    Nom Type Description
    étiquette Chaîne Facultatif. Nom du minuteur pour se connecter à la console. Doit correspondre au minuteur spécifié dans Console : time(étiquette de chaîne) label le paramètre et est sensible à la casse.

    Par défaut : utilise l’étiquette « par défaut » si elle est omise.

    valN Objet Facultatif. Valeurs supplémentaires à consigner après la sortie du minuteur. Accepte un objet non structuré prenant en charge n’importe quel type de données avec une gestion spéciale pour les chaînes.
    Tableau 24. Renvoie
    Type Description
    Néant

    L’exemple suivant montre comment appeler timeLog() à l’aide de la valeur d’étiquette d’un minuteur précédemment démarré à l’aide de la méthode time( ). La méthode timeLog() consigne la valeur actuelle d’un minuteur.

    console.time("reticulating splines");
    reticulateSplines();
    console.timeLog("reticulating splines");
    // reticulating splines: 650ms

    Si le nom du minuteur est omis, le minuteur est nommé « par défaut » :

    console.time();reticulateSplines();
    console.timeLog();// default: 780ms

    S’il n’y a pas de minuteur correspondant, console.timeLog() enregistre un avertissement comme :

    Timer "timer name" doesn't exist.
    

    Vous pouvez consigner des valeurs supplémentaires sur la console après la sortie du minuteur :

    console.time();reticulateSplines();
    console.timeLog("default","Hello","world");// default: 780ms Hello world

    Dans un autre exemple, console.time('Timer') démarre un minuteur avec l’étiquette « Timer ». console.timeLog('Timer') consigne le temps écoulé ainsi que les messages supplémentaires facultatifs. console.timeEnd('Timer') arrête le minuteur et enregistre le temps total écoulé.

    console.time('Timer');
    
    setTimeout(() => {
        console.timeLog('Timer', 'Halfway done');
    }, 1000);
    
    setTimeout(() => {
        console.timeLog('Timer', 'Almost done');
        console.timeEnd('Timer');
    }, 2000);

    Sortie du journal :

    Timer: 1000ms Halfway done
    Timer: 2000ms Almost done
    Timer: 2000ms

    Console : trace(objets objet)

    Consigne une trace de pile dans le journal système au niveau des informations.

    Tableau 25. Paramètres
    Nom Type Description
    objets Objet Facultatif. Zéro ou plusieurs objets à sortir dans la console avec la trace. Les objets sont assemblés et formatés de la même manière que s’ils étaient passés à la Console : log(Objet val1... val2, Chaîne msg, Chaîne subst1... subst2) méthode.

    Par défaut : renvoie la totalité de la pile en sortie.

    Tableau 26. Renvoie
    Type Description
    Néant

    L’exemple suivant montre comment trace() consigne l’exemple de trace de message avec la trace de la pile.

    function firstFunction() {
        secondFunction();
    }
    
    function secondFunction() {
        thirdFunction();
    }
    
    function thirdFunction() {
        console.trace('Trace example');
    }
    
    firstFunction();

    La trace de la pile montre la séquence d’appel : thirdFunction a été appelé par secondFunction, qui a été appelé par firstFunction, et ainsi de suite. Le fichier console.trace ('Exemple de trace') consigne l’exemple detrace de message ainsi que la trace de la pile.

    Sortie :

    Trace example
        at thirdFunction (<filename>:8:13)
        at secondFunction (<filename>:4:5)
        at firstFunction (<filename>:2:5)

    Console : warn(Objet val1... valN, String msg, String subst1... subst2)

    Consigne un message d’avertissement dans le journal système au niveau d’avertissement.

    Remarque :
    Consoler Les méthodes API fournissent les mêmes fonctionnalités de journalisation que l’API système Glide (par exemple, gs.info, gs.warn et gs.debug), mais permettent une utilisation plus réflexe pour les développeurs qui sont familiarisés avec la journalisation des messages à l’aide de méthodes de console. Les méthodes API console et API système Glide peuvent être utilisées sur le serveur.
    Tableau 27. Paramètres
    Nom Type Description
    msg Chaîne Requis si val1...valN n’est pas transmis. Le message ou l’objet principal que vous souhaitez enregistrer dans les journaux système ou dans la sortie. Accepte une chaîne contenant zéro ou plusieurs valeurs de substitution qui peuvent être définies à l’aide du subst1 through substN paramètre.

    Pour plus d’informations, consultez « Utilisation des chaînes de substitution ».Console : incluse dans le périmètre, globale

    subst1... substN Chaîne Facultatif. Valeurs JavaScript par lesquelles remplacer les chaînes de substitution dans msg. Ces valeurs sont journalisées ou affichées dans l’ordre dans lequel elles sont spécifiées. S’il y a plus de valeurs de substitution que de chaînes de substitution, les valeurs supplémentaires sont elles-mêmes écrites et ajoutées après le message (msg) de la même manière que lorsqu’il n’y a pas de chaîne de format.

    Pour plus d’informations, consultez « Utilisation des chaînes de substitution ».Console : incluse dans le périmètre, globale

    val1... valN Objet Requis si msg n’est pas transmis. Liste des valeurs JavaScript supplémentaires à ajouter après le message principal (msg) et qui sont séparées par un espace ou un autre délimiteur. Accepte tous les types de données JavaScript, y compris les chaînes ou les objets, et les génère dans l’ordre dans lequel ils sont spécifiés.
    Tableau 28. Renvoie
    Type Description
    Néant

    L’exemple suivant utilise warn() pour consigner un message d’avertissement, généralement stylisé pour se démarquer (par exemple, avec une icône d’avertissement ou du texte jaune). Cet exemple vérifie la priorité de l’enregistrement : si elle est élevée (priorité ==="1 » ), il enregistre un message d’avertissement. Si elle n’est pas élevée, il enregistre une note moins urgente avec la valeur de priorité actuelle.

    function onLoad() {
        var priority = g_form.getValue("priority");
    
        if (priority === "1") {
            console.warn("Warning: This is a high-priority incident! Immediate attention required.");
        } else {
            console.warn("Note: Priority is not high. Current priority:", priority);
        }
    }
    En conséquence, warn() consigne ou affiche l’erreur comme suit :
    • Pour une priorité élevée : ⚠️ Avertissement : il s’agit d’un incident de priorité élevée ! Attention immédiate requise.
    • Pour les autres priorités : Remarque : ⚠️ La priorité n’est pas élevée. Priorité actuelle : 3