Le module OpenEvent dans DataWorks utilise EventBridge pour l'abonnement et la distribution des messages d'événement. Après avoir créé un bus d'événements personnalisé dans EventBridge, configurez un canal de distribution d'événements dans DataWorks pour publier les événements, puis créez des règles dans EventBridge pour les acheminer vers les services en aval.
Remarques sur l'utilisation
Édition : DataWorks Enterprise Edition uniquement.
Régions : Pris en charge dans Chine (Pékin), Chine (Hangzhou), Chine (Shenzhen), Chine (Shanghai), Chine (Zhangjiakou), Chine (Chengdu), États-Unis (Silicon Valley), États-Unis (Virginie), Allemagne (Francfort), Japon (Tokyo), Chine (Hong Kong) et Singapour.
Contrôle d'accès : Seuls les utilisateurs Open Platform Administrator, Tenant Administrator, les comptes Alibaba Cloud ou les utilisateurs RAM disposant de l'autorisation Aliyundataworksfullaccess ont des permissions de lecture et d'écriture sur la console développeur. Administrateur de la plateforme ouverte. Accorder l'autorisation AliyunDataWorksFullAccess à un utilisateur RAM.
Dépendance : OpenEvent utilise EventBridge pour l'abonnement et la consommation de messages. Activez EventBridge avant de commencer.
Précautions
Si votre abonnement DataWorks Enterprise Edition expire, toutes les extensions deviennent invalides et ne peuvent plus déclencher de vérifications d'événements. Le système valide automatiquement toutes les vérifications déclenchées qui n'ont pas atteint un état terminal.
Fonctionnement
DataWorks expose les messages de changement d'état des processus principaux. Dans le module OpenEvent, vous pouvez mapper un espace de travail DataWorks à un bus d'événements EventBridge afin que tous les messages publiés depuis l'espace de travail soient envoyés vers ce bus. Vous pouvez ensuite filtrer ces messages dans EventBridge pour sélectionner ceux requis par un système en aval et définir comment et où ils sont distribués.
Les messages générés par les opérations dans les modules au niveau du locataire sont automatiquement envoyés vers le bus d'événements par défaut, nommé Default, dans EventBridge. Pour obtenir la liste des événements pris en charge au niveau du locataire, consultez la section Événements au niveau du locataire.
Configuration de DataWorks
Configurez un canal de distribution d'événements dans DataWorks pour envoyer les messages d'événement vers un bus d'événements EventBridge. Les étapes suivantes vous guident pour autoriser DataWorks à accéder à EventBridge et spécifier le bus d'événements cible.
Étape 1 : Accorder l'autorisation de service
Si vous utilisez le service OpenEvent pour la première fois, utilisez votre compte Alibaba Cloud ou un utilisateur RAM disposant de l'autorisation AliyunDataWorksFullAccess pour autoriser DataWorks à accéder à EventBridge.
-
Connectez-vous à la console DataWorks. Dans la région cible, cliquez sur dans le volet de navigation de gauche. Cliquez sur Go to Open Platform pour ouvrir la page Developer Backend.
Sur la page Developer Backend, cliquez sur OpenEvent dans le volet de navigation de gauche pour accéder à la page OpenEvent.
-
Autorisez DataWorks à accéder aux ressources EventBridge.
S'il s'agit de votre première utilisation du service, un bouton Authorize apparaît. Suivez les instructions à l'écran pour accorder à DataWorks l'autorisation d'accéder aux ressources EventBridge. Cette action crée automatiquement un rôle lié au service nommé AliyunServiceRoleForDataWorksOpenPlatform dans la console RAM sous .
Étape 2 : Configurer le canal de distribution d'événements
Un canal de distribution d'événements mappe un espace de travail DataWorks à un bus d'événements EventBridge. Cela garantit que tous les messages publiés depuis l'espace de travail sont envoyés vers ce bus spécifique.
Cliquez sur Add Event Distribution Channel. Dans la boîte de dialogue qui s'affiche, configurez les paramètres Workspace for Event Distribution et Distribute to Custom Event Bus in EventBridge.
-
Si aucun bus d'événements n'est disponible dans EventBridge, vous pouvez cliquer sur Create Custom Event Bus pour accéder à la console EventBridge et en créer un. Vous pouvez également cliquer sur Quickly Create Custom Event Bus with Same Name as Your Workspace pour générer immédiatement un bus d'événements.
Dans la boîte de dialogue Add Event Distribution Channel, sélectionnez un espace de travail pour le paramètre Workspace for Event Distribution et un bus d'événements personnalisé pour le paramètre Distribute to Custom Event Bus in EventBridge, puis cliquez sur OK.
Étape 3 : Activer le canal de distribution d'événements
Après avoir configuré le canal de distribution d'événements, vous pouvez le consulter sur la page OpenEvent. Dans la colonne Actions, vous pouvez Delete, Enable ou Disable le canal.
-
Enable : Après avoir activé le canal, les messages d'événement de l'espace de travail sont envoyés vers le bus d'événements correspondant.
Vous pouvez ensuite accéder à la console EventBridge pour afficher tous les messages d'événement envoyés depuis DataWorks, filtrer les messages dont un consommateur en aval a besoin et définir comment et vers quels services ces messages sont distribués.
Disable/Delete : Si vous désactivez ou supprimez le canal, DataWorks cesse d'envoyer les messages d'événement de l'espace de travail vers le bus d'événements correspondant. Vous ne pouvez plus recevoir ces messages d'événement via EventBridge.
Configuration d'EventBridge
Après avoir activé le canal de distribution d'événements dans DataWorks, les messages publiés sont automatiquement envoyés vers le bus d'événements EventBridge spécifié. Vous devez ensuite configurer des règles d'événement dans EventBridge pour filtrer les messages spécifiques et définir leurs cibles de distribution.
Étape 1 : Créer un bus d'événements personnalisé
Si vous avez créé un bus d'événements personnalisé portant le même nom que votre espace de travail DataWorks à l'étape Étape 2 : Configurer un canal de distribution d'événements, vous pouvez utiliser ce bus directement. Si vous avez cliqué sur Create Custom Event Bus, suivez les étapes ci-dessous pour en créer un. Pour plus d'informations, consultez la section Présentation du bus d'événements.
Connectez-vous à la console EventBridge et cliquez sur Event Bus dans le volet de navigation de gauche.
Sur la page Event Buses, accédez à l'onglet Custom Event Buses et cliquez sur Quickly Create. L'exemple suivant crée un bus d'événements personnalisé nommé
DataWorks2023. Pour créer rapidement le bus, il vous suffit de configurer les champs Name et Description. Vous pouvez ignorer les étapes Event Source, Rule et Target.
Étape 2 : Configurer la règle d'événement
Après avoir créé le bus d'événements, vous pouvez configurer manuellement une règle d'événement pour acheminer les messages d'événement DataWorks vers vos services cibles.
Dans la barre de navigation de gauche, cliquez sur Event Bus. Recherchez le bus d'événements EventBridge cible et cliquez sur pour accéder à la page de configuration des règles d'événement.
Sur la page Event Rules, cliquez sur Create Rule dans le coin supérieur gauche.
Configurer les informations de base : Saisissez un nom et une description pour la règle d'événement. À l'étape Configure basic information, le champ Event bus est défini sur
DataWorks2023par défaut et ne peut pas être modifié. Pour Name, saisissezinstanceStatusChanges(2 à 127 caractères, pouvant contenir des lettres, des chiffres ou des traits d'union). Pour Description, saisissez une description telle que « Cette règle filtre les messages de 'changement d'état d'instance' parmi tous les messages d'événement de l'espace de travail ».-
Configure event pattern : Un modèle d'événement filtre les messages en fonction de leur contenu. Configurez les paramètres comme suit :
Event Source Type : Sélectionnez Custom Event Source.
Event Source : Conservez la valeur par défaut.
-
Pattern Content : Utilisez le format JSON pour spécifier le type de message d'événement. Chaque message d'événement DataWorks possède un type fixe. Vous pouvez trouver le type de message pour chaque opération dans la section Référence : Liste des événements et format des messages et l'utiliser comme valeur pour la clé
typedans le contenu du modèle.{ "source": [ "acs.dataworks" ], "type": [ "dataworks:InstanceStatusChanges:InstanceStatusChanges" ] }
-
Debug event pattern : Après avoir configuré le modèle d'événement, vous pouvez le déboguer pour vérifier qu'il fonctionne comme prévu.
Si vous avez terminé l'étape Étape 3 : Activer le canal de distribution d'événements dans DataWorks, les messages d'événement sont envoyés à EventBridge. Pour tester votre modèle, accédez à la page Event Tracking, recherchez un événement provenant de DataWorks pour votre bus et copiez ses détails. Collez les détails dans la section Event Pattern Debugging et cliquez sur Test pour vérifier le filtre.
-
Si les types d'événement ne correspondent pas, le message « Match failed » s'affiche.
-
Si les types d'événement correspondent, le message « Match succeeded. The event can be triggered as expected. » s'affiche.
-
-
Configure event target : En plus des services personnalisés, vous pouvez envoyer des événements vers diverses autres cibles pour consommation. Pour plus d'informations, consultez la section Présentation des cibles d'événements.
Lorsque vous configurez la cible d'événement, définissez Service Type sur HTTPS. Pour URL, saisissez l'adresse du service HTTPS, par exemple
https://example.com/eventBridge/dataworksEvent. Pour Body, sélectionnez Complete Event. Pour Network Type, sélectionnez Public Network.RemarqueLa configuration illustrée montre l'envoi de messages vers un service HTTPS spécifié. Pour qu'une extension reçoive ce message, sélectionnez HTTPS comme type de service et saisissez l'adresse de déploiement de l'extension dans le champ URL.
Après avoir configuré et enregistré la règle d'événement, EventBridge peut acheminer les messages d'événement DataWorks selon vos paramètres. Cette configuration prend également en charge les extensions.
Consulter les messages d'événement envoyés
Lorsque le canal de distribution d'événements est activé et qu'un événement est déclenché dans DataWorks, vous pouvez consulter les messages d'événement envoyés sur la page Event Tracking du bus d'événements associé. Vous pouvez localiser des messages d'événement spécifiques par type. Pour obtenir la liste des types d'événement, consultez la section Référence : Liste des événements et format des messages.
Sur la page Event Tracking, sélectionnez Query by Time Range. Définissez une plage horaire et cliquez sur Query pour afficher les enregistrements d'événement déclenchés par DataWorks, tels que les événements de type dataworks:FileChange:DeployFile (déploiement de fichier) ou dataworks:FileChange:CommitFile (validation de fichier). Pour afficher plus d'informations sur un enregistrement, consultez sa event trajectory et ses event details.
Bonnes pratiques
Abonnement aux messages avec un service local : Bonnes pratiques : Verrouillage du déploiement de tâches personnalisées.