AWS Proton 使用自動化 EventBridge - AWS Proton

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AWS Proton 使用自動化 EventBridge

您可以在 Amazon 監控 AWS Proton 事件 EventBridge。 EventBridge 從您自己的應用程式、 software-as-a-service (SaaS) 應用程式和 AWS 服務. 您可以設定事件以回應資 AWS 源狀態變更。 EventBridge 然後將此數據路由到目標服務,例如 AWS Lambda 和 Amazon 簡單通知服務。這些事件與 Amazon 活動中出現的 CloudWatch 事件相同。 CloudWatch Events 提供近乎即時的系統事件串流,用來描述 AWS 資源變更。有關更多信息,請參閱什麼是 Amazon EventBridge?Amazon 用 EventBridge 戶指南

用 EventBridge 於在 AWS Proton 佈建工作流程中收到狀態變更的通知。

事件類型

事件是由包含事件模式和目標的規則所組成。您可以選擇事件模式和目標物件來設定規則:

事件模式

每個規則都以事件模式表示,其中包含要監視的事件來源和類型以及事件目標。若要監視事件,請使用您正在監視的服務建立規則作為事件來源。例如,您可以建立具有事件模式的規則,該規則會用 AWS Proton 作事件來源,以便在部署狀態發生變更時觸發規則。

目標

規則會接收選取的服務做為事件目標。您可以設定目標服務來傳送通知、擷取狀態資訊、採取更正動作、起始事件或採取其他動作。

事件物件包含 ID、帳號、詳細資料類型 AWS 區域、來源、版本、資源、時間 (選用) 的標準欄位。詳細資料欄位是包含事件自訂欄位的巢狀物件。

AWS Proton 事件會以最佳的方式發出。盡力傳遞意味著服務會嘗試將所有事件傳送至 EventBridge,但在極少數情況下,事件可能無法傳遞。

下表會針對每個可發出事件的 AWS Proton 資源,列出詳細資料類型值、明細欄位,以及 (如果有的話) statuspreviousStatus明細欄位值清單的參照。刪除資源時,status明細欄位值為DELETED

資源 詳細類型值 詳細資料欄

EnvironmentTemplate

AWS Proton 環境範本狀態變更

name

status

previousStatus

EnvironmentTemplateVersion

AWS Proton 環境範本版本狀態變更

name

majorVersion

minorVersion

status

previousStatus

狀態值

ServiceTemplate

AWS Proton 服務範本狀態變更

name

status

previousStatus

ServiceTemplateVersion

AWS Proton 服務範本版本狀態變更

name

majorVersion

minorVersion

status

previousStatus

狀態值

Environment

AWS Proton 環境狀態變更

name

status

previousStatus

Service

AWS Proton 服務狀態變更

name

status

previousStatus

狀態值

ServiceInstance

AWS Proton 服務實例狀態變更

name

serviceName

status

previousStatus

ServicePipeline

AWS Proton 服務管道狀態變更

serviceName

status

previousStatus

EnvironmentAccountConnection

AWS Proton 環境帳戶連線狀態變更

id

status

previousStatus

狀態值

Component

AWS Proton 元件狀態變更

name

status

previousStatus

AWS Proton 事件範例

下列範例顯示 AWS Proton 可將事件傳送至的方式 EventBridge。

服務範本

{ "source": "aws.proton", "detail-type": ["AWS Proton Service Template Status Change"], "time": "2021-03-22T23:21:40.734Z", "resources": ["arn:aws:proton:region_id:123456789012:service-template/sample-service-template-name"], "detail": { "name": "sample-service-template-name", "status": "PUBLISHED", "previousStatus": "DRAFT" } }

服務範本版本

{ "source": "aws.proton", "detail-type": ["AWS Proton Service Template Version Status Change"], "time": "2021-03-22T23:21:40.734Z", "resources": ["arn:aws:proton:region_id:123456789012:service-template/sample-service-template-name:1.0"], "detail": { "name": "sample-service-template-name", "majorVersion": "1", "minorVersion": "0", "status": "REGISTRATION_FAILED", "previousStatus": "REGISTRATION_IN_PROGRESS" } }

Environment (環境)

{ "source": "aws.proton", "detail-type": ["AWS Proton Environment Status Change"], "time": "2021-03-22T23:21:40.734Z", "resources": ["arn:aws:proton:region_id:123456789012:environment/sample-environment"], "detail": { "name": "sample-environment", "status": "DELETE_FAILED", "previousStatus": "DELETE_IN_PROGRESS" } }