Configurer un consommateur de script

  • Rversion finale: Australia
  • Mis à jour 12 mars 2026
  • 3 minutes de lecture
  • Utilisez un script pour importer et traiter les données à partir de votre environnement Kafka.

    Avant de commencer

    • Rôle requis : integration_hub_admin
    • Ce consommateur a besoin d’un Connexion au flux abonnement. Pour plus d'informations, consultez https://www.servicenow.com/now-platform/workflow-data-fabric.html.
    • Le ServiceNow module d’extension Programme d’installation de Connexion au flux [com.glide.hub.stream_connect.installer] est requis.

    Pourquoi et quand exécuter cette tâche

    Pour configurer un consommateur, vous devez créer deux enregistrements.
    1. Enregistrement consommateur, qui spécifie le mode d’importation et de traitement des données.
    2. Un enregistrement pour le flux Kafka, qui définit le flux de données vers votre consommateur.
    Cette tâche couvre la création du consommateur. Pour obtenir des instructions sur la création d’un flux Kafka, reportez-vous à la section Créer un flux Kafka.

    Procédure

    1. Accédez à la Tous > Centre d'intégration > Consommateurs > Consommateur de script.
    2. Sélectionnez Nouveau.
    3. Renseignez les champs du formulaire.
      Tableau 1. Consommateur de script
      Champ Description
      Nom Nom du consommateur de script.
      Garantie de livraison En cas de défaillance d’un nœud, option permettant de spécifier la garantie de remise des messages entrants. Sélectionnez l'une des options suivantes :
      • Pas de pertes, mais des doublons : tous les messages sont remis au moins une fois. Certains messages peuvent être remis plusieurs fois.
      • Une fois ou pas du tout : un message n’est pas remis plus d’une fois. Certains messages peuvent ne pas être remis du tout.
      Format de sérialisation Format de sérialisation du message. Sélectionnez l'une des options suivantes :
      • Texte brut : sélectionnez cette option pour tous les messages en texte brut. Il s’agit du format par défaut.
      • Encodé : sélectionnez cette option pour les Apache messages au format Avro. La conversion de messages en texte brut au format Avro nécessite un schéma. Sélectionnez le registre de schémas dans le champ Registre de schémas . Pour plus d’informations sur les schémas, reportez-vous à la section Gestion des schémas dans Connexion au flux.
      Consommateur d’événement Script à utiliser pour utiliser les messages reçus de la rubrique Kafka.
      Application Périmètre de l’application pour le consommateur de script.
      Registre de schémas
      Registre pour le schéma sélectionné. Sélectionnez l'une des options suivantes :
      • Registre de schémas autonome
      • Registre de schéma Confluent

      Ce champ apparaît uniquement lorsque le format de sérialisation est défini sur Codé.

      Pour le registre de schémas Confluent, si l’ID de schéma du message reçu ne figure pas dans la table de schémas, le système importe le schéma de manière dynamique, à l’aide de la connexion REST configurée.

    4. Sélectionnez Enregistrer.

    Exemple

    Cet exemple montre un exemple de script de traitement des messages. Il comprend le champ utc_timestamp , un champ de type chaîne dans le fuseau horaire UTC et le champ de métadonnées , qui comprend les éléments suivants :
    • timestampEpoch, type de données : long
    • Partition, type de données : INT
    • Décalage, type de données : long
    • dataCenter, type de données : chaîne
    (function process(messages) {
      for (var i = 0; i < messages.length; i++) {
        var m = messages[i];
    
        var headerParts = [];
        for (var j = 0; j < m.headers.length; j++) {
          headerParts.push('header[' + j + ']_key=' + m.headers[j].key + ' | header[' + j + ']_value=' + m.headers[j].value);
        }
    
        var line = [
          'message_key='     + m.key,
          'message_body='    + m.message,
          'partition='       + m.metadata.partition,
          'offset='          + m.metadata.offset,
          'datacenter_id='   + m.metadata.datacenter_id,
          'utc_timestamp='   + m.utc_timestamp,
          'timestamp_epoch=' + m.metadata.timestamp_epoch
        ].concat(headerParts).join(' | ');
    
        gs.info('[Kafka Message] ' + line);
      }
    })(messages);
    
    Pour convertir le champ utc_timestamp en GlideDateTime, consultez les exemples suivants.
    
    // Example 1
    var timestamp = new GlideDateTime("2025-08-19 23:31:45");
    console.log(timestamp.getValue());
    
    // Example 2 
    var timestamp2 = new GlideDateTime();
    timestamp2.setNumericValue(1755646305218);
    console.log(timestamp2.getValue());
    
    // Example 3
    var timestamp3 = new GlideDateTime("1970-01-01 00:00:00");
    timestamp3.add(1755646305218);
    console.log(timestamp3.getValue());
    

    Que faire ensuite

    Créer un flux Kafka pour ce consommateur. Une fois le flux activé, vous pouvez commencer à recevoir des messages de votre environnement Kafka.