Introduction à Events
Découvrez comment créer une automatisation avec le service Events.
Vous pouvez créer une règle simple qui envoie une notification chaque fois qu'une personne crée un bucket dans un compartiment particulier de votre location.
Configuration pour Events
Pour tester le service Events dans ce tutoriel, vous devez d'abord configurer les éléments suivants :
- Créer une stratégie IAM pour Events
- Création d'un sujet et d'un abonnement à utiliser comme action
Un administrateur de la location doit configurer cette dernière pour Events. Ces configurations vous permettent d'accéder à une location Oracle Cloud Infrastructure avec la stratégie IAM nécessaire et une ressource à utiliser comme action.
Création d'utilisateurs, de groupes et de compartiments
Vous pouvez reprendre des utilisateurs, groupes et compartiments existants ou en créer.
Procédure de création de groupes et d'utilisateurs
Si les utilisateurs et les groupes appropriés pour l'affectation de droits d'accès à l'utilisation de règles n'existent pas encore, connectez-vous à la console en tant qu'administrateur de location et créez-les.
- Connectez-vous à la console en tant qu'administrateur de location.
- Si vous avez besoin d'un groupe pour Events, procédez comme suit :
- Ouvrez le menu de navigation et sélectionnez Identité et sécurité. Sous Identité, sélectionnez Domaines. La liste des groupes de votre location est affichée.
- Sélectionnez <your-tenancy-name>. Les détails de la location apparaissent.
- Sélectionnez l'onglet Gestion des utilisateurs.
- Faites défiler la page jusqu'à Groupes.
- Sélectionnez Créer le groupe et créez un groupe (reportez-vous à la section Création d'un groupe). Attribuez à ce groupe un nom et une description explicites. Evitez de saisir des informations confidentielles.
- Si vous avez besoin de comptes utilisateur pour Events, procédez comme suit :
- Ouvrez le menu de navigation et sélectionnez Identité et sécurité. Sous Identité, sélectionnez Domaines. La liste des groupes de votre location est affichée.
- Sélectionnez <your-tenancy-name>. Les détails de la location apparaissent.
- Sélectionnez l'onglet Gestion des utilisateurs.
- Sélectionnez Créer un utilisateur et créez-en des utilisateurs (reportez-vous à la section Création d'un utilisateur).
- Si les utilisateurs n'ont pas encore été ajoutés à des groupes, procédez comme suit :
- Sélectionnez le groupe que vous voulez utiliser pour les événements.
- Sélectionnez l'onglet Users (Utilisateurs).
- Sélectionnez Affecter l'utilisateur au groupe.
- Sélectionnez les utilisateurs dans la liste déroulante, puis sélectionnez Ajouter.
Procédure de création d'un compartiment
Si le compartiment approprié pour les règles et les ressources émettant des événements n'existe pas encore, connectez-vous à la console en tant qu'administrateur de location et créez-le.
- Connectez-vous à la console en tant qu'administrateur de location.
- Ouvrez le menu de navigation et sélectionnez Identité et sécurité. Sous Identité, sélectionnez Compartiments. La liste des compartiments de votre location est affichée.
- Sélectionnez Création d'un compartiment et créez-en un (reportez-vous à la section Création d'un compartiment). Attribuez à ce compartiment un nom et une description explicites. Evitez de saisir des informations confidentielles.
Création d'une stratégie IAM pour Events
Pour que les utilisateurs puissent commencer à créer des automatisations sur Events, en tant qu'administrateur de location, vous devez créer une stratégie IAM :
Procédure de création d'une stratégie permettant aux utilisateurs de créer et de gérer des règles
- Connectez-vous à la console en tant qu'administrateur de location.
- Dans la console, ouvrez le menu de navigation et sélectionnez Identité et sécurité. Sous Identité, sélectionnez Stratégies. La liste des stratégies du compartiment en cours de visualisation apparaît.
- Sélectionnez le compartiment racine.
- Sélectionnez Créer une stratégie.
- Fournissez les informations suivantes :
- Nom : nom explicite de la stratégie. Le nom doit être unique parmi toutes les stratégies de votre location. Vous ne pouvez pas le modifier ultérieurement. Evitez de saisir des informations confidentielles.
- Description : description explicite. Vous pourrez la modifier ultérieurement si vous le souhaitez.
- Compartiment : sélectionnez un compartiment.
- Sélectionnez Afficher l'éditeur manuel.
-
Entrez les instructions suivantes pour permettre aux utilisateurs du groupe de gérer et de créer des règles :
Cette ligne accorde à l'utilisateur un accès en inspection aux ressources dans les compartiments pour effectuer des actions données.
allow group <RuleAdmins> to inspect compartments in tenancyCette ligne permet à l'utilisateur d'accéder aux balises définies pour appliquer des balises de filtre aux règles.
allow group <RuleAdmins> to use tag-namespaces in tenancyCes lignes accordent à l'utilisateur l'accès aux ressources Streaming pour certaines actions.
allow group <RuleAdmins> to inspect streams in tenancy allow group <RuleAdmins> to use stream-push in tenancy allow group <RuleAdmins> to use stream-pull in tenancyCes lignes accordent à l'utilisateur l'accès aux ressources Functions pour certaines actions.
allow group <RuleAdmins> to use virtual-network-family in tenancy allow group <RuleAdmins> to manage function-family in tenancyCette ligne accorde à l'utilisateur l'accès aux sujets Notifications pour certaines actions.
allow group <RuleAdmins> to use ons-topic in tenancyCette ligne permet à l'utilisateur de gérer l'accès aux règles pour Events.
allow group <RuleAdmins> to manage cloudevents-rules in tenancy
- Choisissez Créer.
Création d'un sujet et d'un abonnement Notifications
Si un sujet Notifications approprié n'existe pas encore, vous devez vous connecter à la console en tant qu'administrateur de location et le créer. Que vous utilisiez un sujet existant ou que vous en créiez un, ajoutez une adresse électronique en tant qu'abonnement afin de pouvoir surveiller ce compte de messagerie pour les notifications.
Procédure de création d'un sujet
- Ouvrez le menu de navigation et sélectionnez Services de développeur. Sous Intégration d'application, sélectionnez Notifications.
- Sélectionnez Créer un sujet dans la partie supérieure de la liste.
- Dans le panneau Créer un sujet, configurez le sujet.
- Nom : requis. Indiquez le nom convivial du sujet. Il doit être unique. La validation fait la distinction entre les majuscules et les minuscules. Evitez de saisir des informations confidentielles.
- Description : option facultative. Saisissez une description du sujet.
- Compartiment : sélectionnez un compartiment.
- Choisissez Créer.
Procédure de création d'un abonnement
- Ouvrez le menu de navigation et sélectionnez Services de développeur. Sous Intégration d'application, sélectionnez Notifications.
- Sélectionnez Abonnements.
- Sélectionnez Créer un abonnement.
- Sélectionnez le nom du sujet que vous aurez créé à l'étape précédente ou de celui qui vous voulez utiliser dans ce tutoriel.
- Dans le panneau Créer un abonnement, sélectionnez Courriel, puis entrez une adresse électronique.
- Choisissez Créer.
L'abonnement a été créé et une URL de confirmation d'abonnement sera envoyée. L'abonnement conserve le statut En attente jusqu'à ce qu'il soit confirmé.
Procédure de confirmation d'un abonnement
- Dans le courriel de confirmation envoyé à l'adresse que vous avez spécifiée dans la procédure précédente, cliquez sur l'URL de confirmation.
Utilisation de la console pour créer une règle
Utilisez la console pour créer une règle avec un modèle qui met en correspondance les événements de création de bucket émis par Object Storage. Indiquez le sujet Notifications que vous avez créé en tant qu'action de transmission des événements correspondants. Pour tester votre règle, créez un bucket. Object Storage émet un événement qui déclenche l'action. Consultez le courriel indiqué dans l'abonnement pour recevoir la notification.
Création d'une règle
- Ouvrez le menu de navigation et sélectionnez Observation & gestion. Sous Service Events, sélectionnez Règles.
- Sélectionnez un compartiment dans lequel vous êtes autorisé à travailler, puis sélectionnez Créer une règle.
Events compare les règles que vous créez dans ce compartiment aux messages d'événement émis à partir des ressources de ce compartiment et de tous les compartiments enfant.
- Fournissez les informations suivantes.
- Nom d'affichage : indiquez un nom convivial pour la règle. Vous pouvez modifier ce nom ultérieurement. Evitez de saisir des informations confidentielles.
- Description : indiquez la description du fonctionnement de la règle. Vous pouvez modifier cette description ultérieurement.
- Dans Condition, sélectionnez Type d'événement.
- Dans Nom de service, sélectionnez Object Storage.
- Dans Type d'événement, sélectionnez Bucket - Créer.
- Dans Actions, indiquez les actions à déclencher lorsque le filtre trouve une correspondance :
- Dans Type d'action, sélectionnez Notifications.
- Dans Compartiment de notifications, sélectionnez le compartiment contenant le sujet.
- Dans Sujet, sélectionnez le sujet.
- Sélectionnez Créer une règle.
Créer un bucket
- Ouvrez le menu de navigation et sélectionnez Stockage. Sous Object Storage et Archive Storage, sélectionnez Buckets.
- Sélectionnez le compartiment dans lequel vous avez créé la règle (ou l'un de ses compartiments subordonnés).
- Sélectionnez Créer un bucket.
- Dans la boîte de dialogue Créer un bucket, indiquez les attributs du bucket :
- Nom : requis. Description ou nom convivial. Evitez de saisir des informations confidentielles.
-
Niveau de stockage : sélectionnez le niveau auquel stocker les données. Les niveaux disponibles sont les suivants :
- Standard : il s'agit du niveau Object Storage principal par défaut qui permet de stocker les données fréquemment consultées et qui exige un accès rapide et immédiat.
- Archive : niveau spécial destiné au stockage de données rarement consultées et qui nécessitent de longues périodes de conservation. L'accès aux données du niveau Archive n'est pas immédiat. Vous devez restaurer les données archivées pour qu'elles soient accessibles. Pour plus d'informations, reportez-vous à Présentation d'Archive Storage.
- Sélectionnez tout autre paramètre spécial disponible pour le bucket.
- Choisissez Créer.
Extraction de votre notification
-
Connectez-vous au compte de messagerie indiqué dans la procédure précédente pour consulter la notification sur le bucket en cours de création.
Conseil
Vous recevrez une notification chaque fois qu'un bucket est créé dans le compartiment (ou dans l'un de ses sous-compartiments) jusqu'à ce que vous désactiviez la règle.
Utilisation de l'interface de ligne de commande pour créer une règle
Lorsque vous créez une règle à l'aide de l'interface de ligne de commande, le fonctionnement est légèrement différent de celui de la console.
- Pour indiquer les actions de la règle, utilisez un fichier au format JSON. Vous créez ce fichier avant de créer la règle, et le fichier allège la quantité d'informations à saisir sur la ligne de commande.
- Pour indiquer un événement à mettre en correspondance, utilisez une chaîne au format JSON. Saisissez-la directement dans la console lors de la création de la règle.
Créer un fichier d'actions
- Créez un fichier et ajoutez le contenu suivant.
{ "actions": [ { "actionType": "ONS", "description": "string", "isEnabled": true, "topicId": "<topic_OCID>" } ] }Conseil : vous pouvez spécifier des fonctions, des flux de données ou des sujets en tant qu'actions.
Exemple de modèle de fichier d'actions{ "actions": [ { "actionType": "FAAS", "description": "string", "functionId": "<function_OCID>", "isEnabled": true }, { "actionType": "ONS", "description": "string", "isEnabled": true, "topicId": "<topic_OCID>" }, { "actionType": "OSS", "description": "string", "isEnabled": true, "streamId": "<stream_OCID>" } ] } - Remplacez <topic_OCID> par une valeur d'OCID de sujet réelle issue de votre location.
- Ajoutez une description.
- Enregistrez le fichier sous
action.jsoncomme nom de fichier.
Création d'une règle
Ouvrez une invite de commande et exécutez oci events rule create pour créer une règle.
Utilisez les options suivantes :
-
display-nameindique le nom de la règle dans la console. -
is-enabledindique si la règle est évaluée. -
conditionest une chaîne au format JSON utilisée pour indiquer un modèle de mise en correspondance des événements (reportez-vous à l'exemple de commande ci-dessous pour la syntaxe). -
compartment-idindique le compartiment auquel la règle s'applique. Events évalue les messages issus des ressources de ce compartiment et de tous les compartiments enfant. -
actionsindique l'emplacement dans le système de fichiers local du fichier au format JSON que vous avez créé pour indiquer les actions d'une règle. -
L'option
wait-for-state=, si elle est utilisée avec ACTIVE, indique que l'interface de ligne de commande doit attendre que le service crée la règle, effectuer une autre opération GET, puis afficher la règle à l'état actif. Sans cette option, l'interface de ligne de commande affiche la règle immédiatement à l'état de création.
Par exemple :
oci events rule create --display-name CLI-created_rule --is-enabled true --condition "{\"eventType\":[\"com.oraclecloud.objectstorage.createbucket\"]}" --compartment-id <compartment_OCID> --actions <path_to_json_formatted_actions_file> --wait-for-state=ACTIVERemplacez les valeurs dans <compartment_OCID> et <path_to_json_formatted_actions_file> par les valeurs réelles de votre location et du système de fichiers local.
Lorsque vous exécutez la commande précédente, l'interface de ligne de commande vous invite à configurer la règle et son affichage :
Action completed. Waiting until the resource has entered state: ACTIVE
{
"data": {
"actions": {
"actions": [
{
"action-type": "ONS",
"description": "Notifications action",
"id": "ocid1.eventaction.oc1.phx.<unique_ID>",
"lifecycle-message": null,
"lifecycle-state": "ACTIVE",
"topic-id": "ocid1.onstopic.oc1.phx.<unique_ID>"
}
]
},
"compartment-id": "ocid1.compartment.oc1..<unique_ID>",
"condition": "{\"eventType\":[\"com.oraclecloud.objectstorage.createbucket\"]}",
"defined-tags": {},
"description": null,
"display-name": "CLI-created_rule",
"freeform-tags": {},
"id": "ocid1.eventrule.oc1.phx.<unique_ID>",
"is-enabled": true,
"lifecycle-message": null,
"lifecycle-state": "ACTIVE",
"time-created": "2019-04-25T01:32:56.855000+00:00"
},
"etag": "<unique_ID>--gzip"
}
Créer un autre bucket
Créez un autre bucket comme indiqué dans une section précédente.
Recevoir votre notification
Connectez-vous au compte de messagerie indiqué dans la procédure précédente pour consulter la notification sur le bucket en cours de création.
Vous recevrez une notification chaque fois qu'un bucket est créé dans le compartiment (ou dans l'un de ses sous-compartiments) jusqu'à ce que vous désactiviez la règle.
