本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Kinesis
描述Kinesis事件來源類型的物件。如需詳細資訊,請參閱《 AWS Lambda 開發人員指南》中的搭配使用 AWS Lambda 與 Amazon Kinesis。
AWS SAM 會在設定此事件類型時產生AWS::Lambda::EventSourceMapping資源。
語法
若要在 AWS Serverless Application Model (AWS SAM) 範本中宣告此實體,請使用下列語法。
YAML
BatchSize:IntegerBisectBatchOnFunctionError:BooleanDestinationConfig:DestinationConfigEnabled:BooleanFilterCriteria:FilterCriteriaFunctionResponseTypes:ListKmsKeyArn:StringMaximumBatchingWindowInSeconds:IntegerMaximumRecordAgeInSeconds:IntegerMaximumRetryAttempts:IntegerMetricsConfig:MetricsConfigParallelizationFactor:IntegerStartingPosition:StringStartingPositionTimestamp:DoubleStream:StringTumblingWindowInSeconds:Integer
屬性
-
BatchSize -
要在單一批次中擷取的最大項目數。
類型:整數
必要:否
預設值:100
AWS CloudFormation 相容性:此屬性會直接傳遞至
AWS::Lambda::EventSourceMapping資源的BatchSize屬性。下限:
1上限:
10000 -
BisectBatchOnFunctionError -
如果函數傳回錯誤,請將批次分割為兩個,然後重試。
類型:布林值
必要:否
AWS CloudFormation 相容性:此屬性會直接傳遞至
AWS::Lambda::EventSourceMapping資源的BisectBatchOnFunctionError屬性。 -
DestinationConfig -
捨棄記錄的 Amazon Simple Queue Service (Amazon SQS) 佇列或 Amazon Simple Notification Service (Amazon SNS) 主題目的地。
必要:否
AWS CloudFormation 相容性:此屬性會直接傳遞至
AWS::Lambda::EventSourceMapping資源的DestinationConfig屬性。 -
Enabled -
停用事件來源映射以暫停輪詢和叫用。
類型:布林值
必要:否
AWS CloudFormation 相容性:此屬性會直接傳遞至
AWS::Lambda::EventSourceMapping資源的Enabled屬性。 -
FilterCriteria -
物件,定義判斷 Lambda 是否應處理事件的條件。如需詳細資訊,請參閱《 AWS Lambda 開發人員指南》中的AWS Lambda 事件篩選。
必要:否
AWS CloudFormation 相容性:此屬性會直接傳遞至
AWS::Lambda::EventSourceMapping資源的FilterCriteria屬性。 -
FunctionResponseTypes -
目前套用至事件來源映射的回應類型清單。如需詳細資訊,請參閱《AWS Lambda 開發人員指南》中的報告批次項目失敗。
有效值:
ReportBatchItemFailures類型:清單
必要:否
AWS CloudFormation 相容性:此屬性會直接傳遞至
AWS::Lambda::EventSourceMapping資源的FunctionResponseTypes屬性。 -
KmsKeyArn -
金鑰的 Amazon Resource Name (ARN),用於加密與此事件相關的資訊。
類型:字串
必要:否
AWS CloudFormation 相容性:此屬性會直接傳遞至
AWS::Lambda::EventSourceMapping資源的KmsKeyArn屬性。 -
MaximumBatchingWindowInSeconds -
調用函式前收集記錄的最長時間 (單位為秒)。
類型:整數
必要:否
AWS CloudFormation 相容性:此屬性會直接傳遞至
AWS::Lambda::EventSourceMapping資源的MaximumBatchingWindowInSeconds屬性。 -
MaximumRecordAgeInSeconds -
Lambda 傳送至 函數以進行處理的記錄最長存留期。
類型:整數
必要:否
AWS CloudFormation 相容性:此屬性會直接傳遞至
AWS::Lambda::EventSourceMapping資源的MaximumRecordAgeInSeconds屬性。 -
MaximumRetryAttempts -
當函數傳回錯誤時,重試的次數上限。
類型:整數
必要:否
AWS CloudFormation 相容性:此屬性會直接傳遞至
AWS::Lambda::EventSourceMapping資源的MaximumRetryAttempts屬性。 -
MetricsConfig -
選擇加入組態,以取得擷取每個處理階段之事件來源映射的增強指標。如需範例,請參閱「MetricsConfig 事件」。
必要:否
AWS CloudFormation 相容性:此屬性會直接傳遞至
AWS::Lambda::EventSourceMapping資源的MetricsConfig屬性。 -
ParallelizationFactor -
同時處理每個碎片的批次數量。
類型:整數
必要:否
AWS CloudFormation 相容性:此屬性會直接傳遞至
AWS::Lambda::EventSourceMapping資源的ParallelizationFactor屬性。 -
StartingPosition -
要從中開始讀取的串流位置。
-
AT_TIMESTAMP– 指定從中開始讀取記錄的時間。 -
LATEST– 唯讀新記錄。 -
TRIM_HORIZON– 處理所有可用的記錄。
有效值:
AT_TIMESTAMP|LATEST|TRIM_HORIZON類型:字串
必要:是
AWS CloudFormation 相容性:此屬性會直接傳遞至
AWS::Lambda::EventSourceMapping資源的StartingPosition屬性。 -
-
StartingPositionTimestamp -
開始讀取的時間,以 Unix 時間秒為單位。定義
StartingPositionTimestampStartingPosition何時指定為AT_TIMESTAMP。類型:Double
必要:否
AWS CloudFormation 相容性:此屬性會直接傳遞至
AWS::Lambda::EventSourceMapping資源的StartingPositionTimestamp屬性。 -
Stream -
資料串流或串流取用者的 Amazon Resource Name (ARN)。
類型:字串
必要:是
AWS CloudFormation 相容性:此屬性會直接傳遞至
AWS::Lambda::EventSourceMapping資源的EventSourceArn屬性。 -
TumblingWindowInSeconds -
處理時段的持續時間,以秒為單位。有效範圍為 1 到 900 (15 分鐘)。
如需詳細資訊,請參閱《 AWS Lambda 開發人員指南》中的翻滾視窗。
類型:整數
必要:否
AWS CloudFormation 相容性:此屬性會直接傳遞至
AWS::Lambda::EventSourceMapping資源的TumblingWindowInSeconds屬性。
範例
MetricsConfig 事件
以下是資源的範例,該資源使用 MetricsConfig 屬性來擷取其事件來源映射的每個處理階段。
Resources: FilteredEventsFunction: Type: AWS::Serverless::Function Properties: CodeUri: s3://sam-demo-bucket/metricsConfig.zip Handler: index.handler Runtime: nodejs16.x Events: KinesisStream: Type: Kinesis Properties: Stream: !GetAtt KinesisStream.Arn StartingPosition: LATEST MetricsConfig: Metrics: - EventCount
Kinesis 事件來源
以下是 Kinesis 事件來源的範例。
YAML
Events: KinesisEvent: Type: Kinesis Properties: Stream: arn:aws:kinesis:us-east-1:123456789012:stream/my-stream StartingPosition: TRIM_HORIZON BatchSize: 10 Enabled: false FilterCriteria: Filters: - Pattern: '{"key": ["val1", "val2"]}'