Création d'un EventBridge schéma Amazon - Amazon EventBridge

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Création d'un EventBridge schéma Amazon

Vous créez des schémas en utilisant des fichiers JSON avec la spécification OpenAPI ou la spécification JSONSchema Draft4. Vous pouvez créer ou télécharger vos propres schémas en EventBridge utilisant un modèle ou en générant un schéma basé sur le JSON d'un événement. Vous pouvez également inférer le schéma à partir d’événements sur un bus d’événements. Pour créer un schéma à l'aide de l'API EventBridge Schema Registry, utilisez l'action CreateSchemaAPI.

Lorsque vous choisissez entre les formats OpenAPI 3 et JSONSchema Draft4, tenez compte des différences suivantes :

  • Le format JSONSchema prend en charge les mots-clés supplémentaires qui ne sont pas pris en charge dans OpenAPI, tels que $schema, additionalItems.

  • Il existe des différences mineures dans la façon dont les mots-clés sont traités, telles que le type et le format.

  • OpenAPI ne prend pas en charge les liens hypertexte JSONSchema Hyper-Schema dans les documents JSON.

  • Les outils pour OpenAPI ont tendance à se concentrer sur le moment de la construction, tandis que les outils pour JSONSchema ont tendance à se concentrer sur les opérations d’exécution, tels que les outils clients pour la validation des schémas.

Nous recommandons d'utiliser le format JSONSchema pour implémenter la validation côté client afin que les événements envoyés EventBridge soient conformes au schéma. Vous pouvez utiliser JSONSchema pour définir un contrat pour les documents JSON valides, puis utiliser un outil de validation de schéma JSON avant d’envoyer les événements associés.

Une fois que vous disposez d’un nouveau schéma, vous pouvez télécharger des liaisons de code afin de créer des applications pour les événements utilisant ce schéma.

Création d’un schéma à l’aide d’un modèle

Vous pouvez créer un schéma à partir d'un modèle ou en modifiant un modèle directement dans la EventBridge console. Pour obtenir le modèle, vous le téléchargez à partir de la console. Vous pouvez modifier le modèle afin que le schéma corresponde à vos événements. Chargez ensuite votre nouveau modèle via la console.

Rubriques
    Pour télécharger le modèle de schéma
    1. Ouvrez la EventBridge console Amazon à l'adresse https://console.aws.amazon.com/events/.

    2. Dans le volet de navigation, choisissez Schema registry (Registre de schémas).

    3. Dans la section Getting Started (Mise en route), sous Schema template (Modèle de schéma), choisissez Download (Télécharger).

    Vous pouvez également copier le modèle JSON à partir de l’exemple de code suivant.

    { "openapi": "3.0.0", "info": { "version": "1.0.0", "title": "Event" }, "paths": {}, "components": { "schemas": { "Event": { "type": "object", "properties": { "ordinal": { "type": "number", "format": "int64" }, "name": { "type": "string" }, "price": { "type": "number", "format": "double" }, "address": { "type": "string" }, "comments": { "type": "array", "items": { "type": "string" } }, "created_at": { "type": "string", "format": "date-time" } } } } } }

    Pour charger un modèle de schéma
    1. Ouvrez la EventBridge console Amazon à l'adresse https://console.aws.amazon.com/events/.

    2. Dans le volet de navigation, choisissez Schémas, puis choisissez Créer un schéma.

    3. (Facultatif) Sélectionnez ou créez un registre de schémas.

    4. Sous Informations de schéma, entrez un nom pour votre schéma.

    5. (Facultatif) Entrez une description pour votre schéma.

    6. Pour Type de schéma, choisissez OpenAPI 3.0 ou JSON Schema Draft 4.

    7. Dans la zone de texte de l’onglet Créer, faites glisser votre fichier de schéma vers la zone de texte ou collez la source du schéma.

    8. Sélectionnez Créer.

    Modification d’un modèle de schéma directement dans la console

    Pour modifier un schéma dans la console
    1. Ouvrez la EventBridge console Amazon à l'adresse https://console.aws.amazon.com/events/.

    2. Dans le volet de navigation, choisissez Schémas, puis choisissez Créer un schéma.

    3. (Facultatif) Sélectionnez ou créez un registre de schémas.

    4. Sous Informations de schéma, entrez un nom pour votre schéma.

    5. Pour Type de schéma, choisissez OpenAPI 3.0 ou JSON Schema Draft 4.

    6. (Facultatif) Entrez une description du schéma à créer.

    7. Dans l’onglet Créer, choisissez Charger un modèle.

    8. Dans la zone de texte, modifiez le modèle afin que le schéma corresponde à vos événements.

    9. Sélectionnez Créer.

    Création d’un schéma à partir du code JSON d’un événement

    Si vous disposez du code JSON d’un événement, vous pouvez créer automatiquement un schéma pour ce type d’événement.

    Pour créer un schéma en fonction du code JSON d’un événement
    1. Ouvrez la EventBridge console Amazon à l'adresse https://console.aws.amazon.com/events/.

    2. Dans le volet de navigation, choisissez Schémas, puis choisissez Créer un schéma.

    3. (Facultatif) Sélectionnez ou créez un registre de schémas.

    4. Sous Schema details (Détails du schéma), entrez un nom pour votre schéma.

    5. (Facultatif) Entrez une description du schéma que vous avez créé.

    6. Pour Type de schéma, choisissez OpenAPI 3.0.

      Vous ne pouvez pas utiliser JSONSchema lorsque vous créez un schéma à partir du code JSON d’un événement.

    7. Sélectionnez Discover from JSON (Découvrir à partir de JSON)

    8. Dans la zone de texte sous JSON, collez ou faites glisser la source JSON d'un événement.

      Par exemple, vous pouvez coller la source de cet AWS Step Functions événement en cas d'échec d'exécution.

      { "version": "0", "id": "315c1398-40ff-a850-213b-158f73e60175", "detail-type": "Step Functions Execution Status Change", "source": "aws.states", "account": "012345678912", "time": "2019-02-26T19:42:21Z", "region": "us-east-1", "resources": [ "arn:aws:states:us-east-1:012345678912:execution:state-machine-name:execution-name" ], "detail": { "executionArn": "arn:aws:states:us-east-1:012345678912:execution:state-machine-name:execution-name", "stateMachineArn": "arn:aws:states:us-east-1:012345678912:stateMachine:state-machine", "name": "execution-name", "status": "FAILED", "startDate": 1551225146847, "stopDate": 1551225151881, "input": "{}", "output": null } }
    9. Choisissez Discover schema (Découvrir le schéma).

    10. EventBridge génère un schéma OpenAPI pour l'événement. Par exemple, le schéma suivant est généré pour l’événement Step Functions précédent.

      { "openapi": "3.0.0", "info": { "version": "1.0.0", "title": "StepFunctionsExecutionStatusChange" }, "paths": {}, "components": { "schemas": { "AWSEvent": { "type": "object", "required": ["detail-type", "resources", "detail", "id", "source", "time", "region", "version", "account"], "x-amazon-events-detail-type": "Step Functions Execution Status Change", "x-amazon-events-source": "aws.states", "properties": { "detail": { "$ref": "#/components/schemas/StepFunctionsExecutionStatusChange" }, "account": { "type": "string" }, "detail-type": { "type": "string" }, "id": { "type": "string" }, "region": { "type": "string" }, "resources": { "type": "array", "items": { "type": "string" } }, "source": { "type": "string" }, "time": { "type": "string", "format": "date-time" }, "version": { "type": "string" } } }, "StepFunctionsExecutionStatusChange": { "type": "object", "required": ["output", "input", "executionArn", "name", "stateMachineArn", "startDate", "stopDate", "status"], "properties": { "executionArn": { "type": "string" }, "input": { "type": "string" }, "name": { "type": "string" }, "output": {}, "startDate": { "type": "integer", "format": "int64" }, "stateMachineArn": { "type": "string" }, "status": { "type": "string" }, "stopDate": { "type": "integer", "format": "int64" } } } } } }
    11. Une fois le schéma généré, choisissez Créer.

    Création d’un schéma à partir d’événements sur un bus d’événements

    EventBridge peut déduire des schémas en découvrant des événements. Pour inférer des schémas, vous activez la découverte d’événement sur un bus d’événements et chaque schéma unique est ajouté au registre des schémas, y compris ceux relatifs aux événements entre comptes. Les schémas découverts par EventBridge apparaissent dans le registre des schémas découverts sur la page Schémas.

    Si le contenu des événements sur le bus d'événements change, EventBridge crée de nouvelles versions du EventBridge schéma associé.

    Note

    L’activation de la découverte d’événement sur un bus d’événements peut entraîner des frais. Les cinq premiers millions d’événements traités chaque mois sont gratuits.

    Note

    EventBridge déduit des schémas à partir d'événements entre comptes par défaut, mais vous pouvez le désactiver en mettant à jour la propriété. cross-account Pour plus d'informations, consultez Discoverers dans le document de référence de l'API EventBridge Schema Registry.

    Pour activer la découverte de schéma sur un bus d'événements
    1. Ouvrez la EventBridge console Amazon à l'adresse https://console.aws.amazon.com/events/.

    2. Dans le volet de navigation, sélectionnez Event Buses (Bus d'événements).

    3. Effectuez l’une des actions suivantes :

      • Pour activer la découverte sur le bus d’événements par défaut, choisissez Démarrer la découverte.

      • Pour activer la découverte sur un bus d’événements personnalisé, sélectionnez le bouton radio correspondant au bus d’événements personnalisé, puis choisissez Démarrer la découverte.