在亚马逊中使用事件 JSON 创建架构 EventBridge - Amazon EventBridge
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

在亚马逊中使用事件 JSON 创建架构 EventBridge

如果您有事件的 JSON,则可以自动为该类型的事件创建架构。

基于事件的 JSON 创建架构
  1. 打开亚马逊 EventBridge 控制台,网址为https://console.aws.amazon.com/events/

  2. 在导航窗格中,选择架构,然后选择创建架构

  3. (可选)选择或创建架构注册表。

  4. Schema details (架构详细信息) 下,输入架构的名称。

  5. (可选)输入所创建架构的描述。

  6. 架构类型选择 OpenAPI 3.0

    JSONSchema 当你根据事件的 JSON 创建架构时,你不能使用。

  7. 选择 Discover from JSON (从 JSON 中发现)

  8. JSON 下的文本框中,粘贴或拖动事件的 JSON 源。

    例如,对于执行失败,您可以粘贴此 Amazon Step Functions 事件的源代码。

    { "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. 选择 发现架构

  10. EventBridge 为该事件生成一个 OpenAPI 架构。例如,以下架构是为上一 Step Functions 事件生成的。

    { "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. 生成架构后,选择创建