使用 Amazon AppConfig deployment events to Amazon EventBridge 扩展 - Amazon AppConfig
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

使用 Amazon AppConfig deployment events to Amazon EventBridge 扩展

Amazon AppConfig deployment events to Amazon EventBridge 扩展程序是 Amazon 创作的扩展程序,可帮助您监视和处理 Amazon AppConfig 配置部署工作流。每当部署配置时,扩展程序都会向 EventBridge 默认事件总线发送事件通知。将扩展程序关联到 Amazon AppConfig 应用程序、环境或配置文件之一后,Amazon AppConfig 会在每次配置部署开始、结束和回滚后向事件总线发送事件通知。

如果您希望更好地控制哪些操作点发送 EventBridge 通知,您可以创建自定义扩展程序,并在 URI 字段中输入 EventBridge 默认事件总线 Amazon 资源名称(ARN)。有关创建扩展程序的信息,请参阅 演练:创建自定义 Amazon AppConfig 扩展程序

重要

此扩展程序仅支持 EventBridge 默认事件总线。

使用扩展程序

要使用 Amazon AppConfig deployment events to Amazon EventBridge 扩展程序,首先通过创建扩展程序关联将扩展程序附加到其中一个 Amazon AppConfig 资源。您可以使用 Amazon AppConfig 控制台或 CreateExtensionAssociation API 操作创建关联。创建关联时,您可以指定 Amazon AppConfig 应用程序、环境或配置文件的 ARN。如果将扩展程序关联到应用程序或环境,则会为指定应用程序或环境中包含的任何配置文件发送事件通知。

创建关联后,当部署指定 Amazon AppConfig 资源的配置时,Amazon AppConfig 会调用该扩展程序,并根据该扩展程序中指定的操作点发送通知。

注意

此扩展程序由以下操作点调用:

  • ON_DEPLOYMENT_START

  • ON_DEPLOYMENT_COMPLETE

  • ON_DEPLOYMENT_ROLLED_BACK

您无法自定义此扩展程序的操作点。若要调用不同的操作点,可以创建自己的扩展程序。有关更多信息,请参阅 演练:创建自定义 Amazon AppConfig 扩展程序

使用以下过程通过 Amazon Systems Manager 控制台或 Amazon CLI 创建 Amazon AppConfig 扩展程序关联。

创建扩展程序关联(控制台)
  1. 访问 https://console.aws.amazon.com/systems-manager/appconfig/,打开 Amazon Systems Manager 控制台。

  2. 在导航窗格中,选择 Amazon AppConfig

  3. 扩展程序 选项卡上,选择 添加到资源

  4. 扩展程序资源详细信息部分中,对于资源类型,选择 Amazon AppConfig 资源类型。根据您选择的资源,Amazon AppConfig 会提示您选择其他资源。

  5. 选择创建与资源的关联

下面是调用扩展程序时发送到 EventBridge 的示例事件。

{ "version":"0", "id":"c53dbd72-c1a0-2302-9ed6-c076e9128277", "detail-type":"On Deployment Complete", "source":"aws.appconfig", "account":"111122223333", "time":"2022-07-09T01:44:15Z", "region":"us-east-1", "resources":[ "arn:aws:appconfig:us-east-1:111122223333:extensionassociation/z763ff5" ], "detail":{ "InvocationId":"5tfjcig", "Parameters":{ }, "Type":"OnDeploymentComplete", "Application":{ "Id":"ba8toh7", "Name":"MyApp" }, "Environment":{ "Id":"pgil2o7", "Name":"MyEnv" }, "ConfigurationProfile":{ "Id":"ga3tqep", "Name":"MyConfigProfile" }, "DeploymentNumber":1, "ConfigurationVersion":"1" } }