本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
ScheduleV2
描述ScheduleV2
事件來源類型的物件,可將狀態機器設定為按排程觸發之 Amazon EventBridge Scheduler 事件的目標。如需詳細資訊,請參閱什麼是 Amazon EventBridge 排程器? 在「EventBridge 排程器使用指南」中。
AWS Serverless Application Model (AWS SAM) 在設定此事件類型時產生AWS::Scheduler::Schedule資源。
語法
若要在 AWS Serverless Application Model (AWS SAM) 範本中宣告此實體,請使用下列語法。
YAML
DeadLetterConfig:
DeadLetterConfig
Description:String
EndDate:String
FlexibleTimeWindow:FlexibleTimeWindow
GroupName:String
Input:String
KmsKeyArn:String
Name:String
OmitName:Boolean
PermissionsBoundary:String
RetryPolicy:RetryPolicy
RoleArn:String
ScheduleExpression:String
ScheduleExpressionTimezone:String
StartDate:String
State:String
屬性
-
DeadLetterConfig
-
設定 Amazon Simple Queue Service (Amazon SQS) 佇列,在目標叫用失敗後 EventBridge 傳送事件。例如,當將事件傳送至不存在的 Lambda 函數,或是沒 EventBridge 有足夠的權限無法呼叫 Lambda 函數時,呼叫可能會失敗。如需詳細資訊,請參閱《排程器使用指EventBridge 南》中的 < 設定 EventBridge 排程器的無效字母佇列 >。
必要:否
AWS CloudFormation 兼容性:此屬性類似於
AWS::Scheduler::Schedule
Target
數據類型的DeadLetterConfig
屬性。如果您想要 AWS SAM 為您建立無效字母佇列,則此屬性的 AWS SAM 版本包含其他子屬性。 -
Description
-
排程的描述。
類型:字串
必要:否
AWS CloudFormation 兼容性:此屬性直接傳遞給
AWS::Scheduler::Schedule
資源的Description
屬性。 -
EndDate
-
UTC 日期,排程可在此日期之前叫用其目標。視排程的週期運算式而定,叫用可能會在您指定的 EndDate 當天或之前停止。
類型:字串
必要:否
AWS CloudFormation 兼容性:此屬性直接傳遞給
AWS::Scheduler::Schedule
資源的EndDate
屬性。 -
FlexibleTimeWindow
-
允許設定可在其中呼叫排程的視窗。
必要:否
AWS CloudFormation 兼容性:此屬性直接傳遞給
AWS::Scheduler::Schedule
資源的FlexibleTimeWindow
屬性。 -
GroupName
-
要與此排程產生關聯的排程群組名稱。如果未定義,則使用預設群組。
類型:字串
必要:否
AWS CloudFormation 兼容性:此屬性直接傳遞給
AWS::Scheduler::Schedule
資源的GroupName
屬性。 -
Input
-
傳遞到目標的有效 JSON 文字。如果您使用此屬性,事件文字本身不會有任何內容傳遞到目標。
類型:字串
必要:否
AWS CloudFormation 兼容性:此屬性直接傳遞給
AWS::Scheduler::Schedule Target
資源的Input
屬性。 -
KmsKeyArn
-
將用於加密客戶資料的 KMS 金鑰的 ARN。
類型:字串
必要:否
AWS CloudFormation 兼容性:此屬性直接傳遞給
AWS::Scheduler::Schedule
資源的KmsKeyArn
屬性。 -
Name
-
排程的名稱。如果未指定名稱,則會以格式 AWS SAM 產生名稱,
並使用該 ID 做為排程名稱。StateMachine-Logical-ID
Event-Source-Name
類型:字串
必要:否
AWS CloudFormation 兼容性:此屬性直接傳遞給
AWS::Scheduler::Schedule
資源的Name
屬性。 OmitName
-
依預設, AWS SAM 會產生並使用格式為
<S tate-machine-logical-ID event-source-name >< >
的排程名稱。將此性質設定true
為以 AWS CloudFormation 產生唯一的實體 ID,並將其用作明細表名稱。類型:布林值
必要:否
預設:
false
AWS CloudFormation 兼容性:此屬性是唯一的, AWS SAM 並且沒有相 AWS CloudFormation 等的屬性。
-
PermissionsBoundary
-
用來設定角色許可邊界的政策 ARN。
注意
如果
PermissionsBoundary
已定義,則 AWS SAM 會將相同的界限套用至排程器排程的目標 IAM 角色。類型:字串
必要:否
AWS CloudFormation 兼容性:此屬性直接傳遞給
AWS::IAM::Role
資源的PermissionsBoundary
屬性。 -
RetryPolicy
-
包含重試政策設定相關資訊的
RetryPolicy
物件。類型:RetryPolicy
必要:否
AWS CloudFormation 兼容性:此屬性直接傳遞給
AWS::Scheduler::Schedule
Target
數據類型的RetryPolicy
屬性。 -
RoleArn
-
呼叫排程時, EventBridge 排程器將用於目標的 IAM 角色 ARN。
類型:RoleArn
必要:否
AWS CloudFormation 兼容性:此屬性直接傳遞給
AWS::Scheduler::Schedule
Target
數據類型的RoleArn
屬性。 -
ScheduleExpression
-
決定排程執行時間和頻率的排程運算式。
類型:字串
必要:是
AWS CloudFormation 兼容性:此屬性直接傳遞給
AWS::Scheduler::Schedule
資源的ScheduleExpression
屬性。 -
ScheduleExpressionTimezone
-
計算排程運算式所使用的時區。
類型:字串
必要:否
AWS CloudFormation 兼容性:此屬性直接傳遞給
AWS::Scheduler::Schedule
資源的ScheduleExpressionTimezone
屬性。 -
StartDate
-
日期 (以 UTC 為單位),在此日期之後,排程就可以開始叫用目標。視排程的週期運算式而定,叫用可能會在您指定的 StartDate 當天或之後發生。
類型:字串
必要:否
AWS CloudFormation 兼容性:此屬性直接傳遞給
AWS::Scheduler::Schedule
資源的StartDate
屬性。 -
State
-
排程的狀態。
接受的值:
DISABLED | ENABLED
類型:字串
必要:否
AWS CloudFormation 兼容性:此屬性直接傳遞給
AWS::Scheduler::Schedule
資源的State
屬性。
範例
定義排程 2 資源的基本範例
StateMachine: Type: AWS::Serverless::StateMachine Properties: Name: MyStateMachine Events: ScheduleEvent: Type: ScheduleV2 Properties: ScheduleExpression: "rate(1 minute)" ComplexScheduleEvent: Type: ScheduleV2 Properties: ScheduleExpression: rate(1 minute) FlexibleTimeWindow: Mode: FLEXIBLE MaximumWindowInMinutes: 5 StartDate: '2022-12-28T12:00:00.000Z' EndDate: '2023-01-28T12:00:00.000Z' ScheduleExpressionTimezone: UTC RetryPolicy: MaximumRetryAttempts: 5 MaximumEventAgeInSeconds: 300 DeadLetterConfig: Type: SQS DefinitionUri: Bucket: sam-demo-bucket Key: my-state-machine.asl.json Version: 3 Policies: - LambdaInvokePolicy: FunctionName: !Ref MyFunction