本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
監控耐用的 函數
您可以使用 CloudWatch 指標、CloudWatch Logs 和追蹤來監控耐用的函數。由於耐用的函數可以長時間執行並跨越多個函數叫用,因此監控它們需要了解其獨特的執行模式,包括檢查點、狀態轉換和重播行為。
CloudWatch 指標
Lambda 會自動將指標發佈至 CloudWatch,無需額外費用。耐用函數提供超出標準 Lambda 指標的額外指標,協助您監控長時間執行的工作流程、狀態管理和資源使用率。
耐用的執行指標
Lambda 會針對持久性執行發出下列指標:
| 指標 | Description |
|---|---|
ApproximateRunningDurableExecutions |
處於 RUNNING 狀態的耐久執行數目 |
ApproximateRunningDurableExecutionsUtilization |
您帳戶目前正在使用的最大執行中耐久執行配額百分比 |
DurableExecutionDuration |
持久執行保持為 RUNNING 狀態的經過時間,以毫秒為單位 |
DurableExecutionStarted |
啟動的持久性執行數量 |
DurableExecutionStopped |
使用 StopDurableExecution API 停止的耐久執行數目 |
DurableExecutionSucceeded |
成功完成的持久性執行數量 |
DurableExecutionFailed |
因失敗而完成的耐久執行數量 |
DurableExecutionTimedOut |
超過其設定執行逾時的持久執行數量 |
DurableExecutionOperations |
在持久性執行內執行的累計操作數 (上限:3,000) |
DurableExecutionStorageWrittenBytes |
持久性執行所保留以位元組為單位的累積資料量 (上限:100 MB) |
CloudWatch 指標
Lambda 會發出耐用函數的標準調用、效能和並行指標。由於耐久的執行可能會在通過檢查點和重播時跨越多個函數叫用,因此這些指標的行為與標準函數不同:
調用:計算每個函數調用,包括重播。單一耐久執行可以產生多個調用資料點。
持續時間:分別測量每個函數叫用。
DurableExecutionDuration用於單一持久性執行所花費的總時間。錯誤:追蹤函數叫用失敗。
DurableExecutionFailed用於執行層級失敗。
如需標準 Lambda 指標的完整清單,請參閱 Lambda 函數的指標類型。
建立 CloudWatch 警示
建立 CloudWatch 警示,以在指標超過閾值時通知您。常見警示包括:
ApproximateRunningDurableExecutionsUtilization超過配額的 80%DurableExecutionFailed增加超過閾值DurableExecutionTimedOut表示執行逾時DurableExecutionStorageWrittenBytes接近儲存限制
如需詳細資訊,請參閱使用 CloudWatch 警示。
.EventBridge 事件
Lambda 會將持久的執行狀態變更事件發佈至 EventBridge。您可以使用這些事件來觸發工作流程、傳送通知,或追蹤耐久函數的執行生命週期變更。
持久性執行狀態變更事件
每當持久性執行變更狀態時,Lambda 都會向 EventBridge 發出事件。這些事件具有下列特性:
來源:
aws.lambda詳細資訊類型:
Durable Execution Status Change
狀態變更事件會針對下列執行狀態發佈:
RUNNING- 執行已開始SUCCEEDED- 執行成功完成STOPPED- 使用 StopDurableExecution API 停止執行FAILED- 執行失敗並發生錯誤TIMED_OUT- 執行超過設定的逾時
下列範例顯示持久的執行狀態變更事件:
{ "version": "0", "id": "d019b03c-a8a3-9d58-85de-241e96206538", "detail-type": "Durable Execution Status Change", "source": "aws.lambda", "account": "123456789012", "time": "2025-11-20T13:08:22Z", "region": "us-east-1", "resources": [], "detail": { "durableExecutionArn": "arn:aws:lambda:us-east-1:123456789012:function:my-function:$LATEST/durable-execution/090c4189-b18b-4296-9d0c-cfd01dc3a122/9f7d84c9-ea3d-3ffc-b3e5-5ec51c34ffc9", "durableExecutionName": "order-123", "functionArn": "arn:aws:lambda:us-east-1:123456789012:function:my-function:2", "status": "RUNNING", "startTimestamp": "2025-11-20T13:08:22.345Z" } }
對於終端機狀態 (SUCCEEDED、STOPPED、FAILED、TIMED_OUT),事件包含指出執行完成時間endTimestamp的欄位。
建立 EventBridge 規則
建立規則,將持久的執行狀態變更事件路由到 Amazon Simple Notification Service、Amazon Simple Queue Service 或其他 Lambda 函數等目標。
下列範例會建立符合所有持久執行狀態變更的規則:
{ "source": ["aws.lambda"], "detail-type": ["Durable Execution Status Change"] }
下列範例會建立僅符合失敗執行的規則:
{ "source": ["aws.lambda"], "detail-type": ["Durable Execution Status Change"], "detail": { "status": ["FAILED"] } }
下列範例會建立符合特定函數狀態變更的規則:
{ "source": ["aws.lambda"], "detail-type": ["Durable Execution Status Change"], "detail": { "functionArn": [{ "prefix": "arn:aws:lambda:us-east-1:123456789012:function:my-function" }] } }
如需建立規則的詳細資訊,請參閱《EventBridge 使用者指南》中的 Amazon EventBridge 教學課程。 EventBridge
AWS X-Ray 追蹤
您可以在耐用的函數上啟用 X-Ray 追蹤。Lambda 會將 X-Ray 追蹤標頭傳遞至持久性執行,讓您追蹤整個工作流程的請求。
若要使用 Lambda 主控台啟用 X-Ray; 追蹤,請選擇您的函數,然後選擇組態、監控和操作工具,然後在 X-Ray 下開啟主動追蹤。
若要使用 啟用 X-Ray 追蹤 AWS CLI:
aws lambda update-function-configuration \ --function-name my-durable-function \ --tracing-config Mode=Active
若要使用 啟用 AWS X-Ray 追蹤 AWS SAM:
Resources: MyDurableFunction: Type: AWS::Serverless::Function Properties: Tracing: Active DurableConfig: ExecutionTimeout: 3600
如需 X-Ray 的詳細資訊,請參閱 AWS X-Ray 開發人員指南。