本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Step Functions CloudWatch
监控是保持 Amazon Step Functions 和您的 Amazon 解决方案的可靠性、可用性和性能的重要方面。您应该尽可能多地从所用的 Amazon 服务收集监控数据,以便更轻松地调试任何多点故障。在开始监控 Step Functions 之前,您应创建一个监控计划,回答以下问题:
-
监控目的是什么?
-
您将监控哪些资源?
-
监控这些资源的频率如何?
-
您将使用哪些监控工具?
-
谁负责执行监控任务?
-
出现错误时应通知谁?
下一步是在您的环境中为正常 Step Functions 性能设置基准。为此,在不同时间和不同负载条件下测量性能。监控Step Functions 时,您可以考虑存储历史监控数据。此类数据可为您提供与当前性能数据进行比较的基准,用于确定正常性能模式和性能异常,以及设计解决问题的方法。
例如,对于 Step Functions,您可以监控活动的数量,或者Amazon Lambda由于检测信号超时造成了任务失败。在性能低于您建立的基准时,您可能需要更改检测信号时间间隔。
要建立基准,您至少应监控以下指标:
-
ActivitiesStarted
-
ActivitiesTimedOut
-
ExecutionsStarted
-
ExecutionsTimedOut
-
LambdaFunctionsStarted
-
LambdaFunctionsTimedOut
以下部分介绍了 Step Functions 向亚马逊提供的指标。 CloudWatch. 您可以使用这些指标来跟踪状态机和活动,以及设置有关阈值的警报。您可以使用 Amazon Web Services Management Console 查看指标。
报告时间间隔的指标
一些Step Functions CloudWatch 指标是时间间隔,始终以毫秒为单位测量。这些指标通常对应于可以设置状态机、活动和 Lambda 函数超时的执行的各个阶段,并且带有说明性名称。
例如,ActivityRunTime
指标测量活动在开始执行后,完成活动所需的时间。您可以为同一个时段设置超时值。
在 CloudWatch 控制台,如果选择,您可以获得最佳结果平均的作为时间间隔度量的显示统计数据。
报告计数的指标
一些Step Functions CloudWatch 指标以计数. 例如,ExecutionsFailed
记录失败的状态机执行次数。
在 CloudWatch 控制台,如果选择,您可以获得最佳结果总和作为计数指标的显示统计数据。
执行指标
这些区域有:AWS/States
命名空间包括 Step Functions 执行的以下指标。
指标 | 描述 |
---|---|
ExecutionTime |
执行开始时间与关闭时间之间的时间间隔 (毫秒)。 |
ExecutionThrottled |
被阻止的 StateEntered 事件和重试数量。这与 StateTransition 限制有关。有关更多信息,请参阅 Amazon Step Functions 开发人员指南中的 与州限制相关的配额。 |
ExecutionsAborted |
已中止或终止的执行的数量。 |
ExecutionsFailed |
失败执行的数量。 |
ExecutionsStarted |
已开始的执行的数量。 |
ExecutionsSucceeded |
成功完成的执行的数量。 |
ExecutionsTimedOut |
因任意原因超时的执行的数量。 |
快速工作流的执行指标
这些区域有:AWS/States
命名空间包括 Step Functions 快速工作流执行的以下指标。
指标 | 描述 |
---|---|
ExpressExecutionMemory
|
快速工作流消耗的总内存。 |
ExpressExecutionBilledDuration |
向快速工作流程收取费用的持续时间。 |
ExpressExecutionBilledMemory |
对快速工作流程收取费用的内存消耗量。 |
Step Functions 执行指标的维度
维度 | 描述 |
---|---|
StateMachineArn
|
所涉执行的状态机的 Amazon 资源名称 (ARN)。 |
活动指标
这些区域有:AWS/States
命名空间包括 Step Functions 活动的以下指标。
指标 | 描述 |
---|---|
ActivityRunTime
|
活动开始时间与关闭时间之间的时间间隔 (毫秒)。 |
ActivityScheduleTime |
活动保持在计划状态的时间间隔 (毫秒)。 |
ActivityTime |
活动排定时间与关闭时间之间的时间间隔 (毫秒)。 |
ActivitiesFailed |
失败活动的数量。 |
ActivitiesHeartbeatTimedOut |
因检测信号超时而超时的活动的数量。 |
ActivitiesScheduled |
计划活动的数量。 |
ActivitiesStarted |
已开始活动的数量。 |
ActivitiesSucceeded |
成功完成的活动的数量。 |
ActivitiesTimedOut |
关闭时超时的活动的数量。 |
Step Functions 活动量度的维度
维度 | 描述 |
---|---|
|
活动的 ARN。 |
Lambda 函数指标
这些区域有:AWS/States
命名空间包括 Step Functions Lambda 函数的以下指标。
指标 | 描述 |
---|---|
LambdaFunctionRunTime |
Lambda 函数开始时间与关闭时间之间的时间间隔 (毫秒)。 |
LambdaFunctionScheduleTime |
Lambda 函数保持在计划状态的时间间隔 (毫秒)。 |
LambdaFunctionTime |
Lambda 函数排定时间与关闭时间之间的时间间隔 (毫秒)。 |
LambdaFunctionsFailed |
失败的 Lambda 函数的数量。 |
LambdaFunctionsScheduled |
已计划的 Lambda 函数的数量。 |
LambdaFunctionsStarted |
已启动的 Lambda 函数的数量。 |
LambdaFunctionsSucceeded |
成功完成的 Lambda 函数的数量。 |
LambdaFunctionsTimedOut |
关闭时超时的 Lambda 函数的数量。 |
Step Functions 指标的维度
维度 | 描述 |
---|---|
|
Lambda 函数的 ARN。 |
Lambda 函数指标是针对任务状态发出的,这些状态在中指定 Lambda 函数 ARN
Resource
字段中返回的子位置类型。任务状态使用"Resource": "arn:aws:states:::lambda:invoke"
而是发出服务集成指标。有关更多信息,请参阅 使用Step Functions 调用 Lambda。
服务集成指标
这些区域有:AWS/States
命名空间包括 Step Functions 服务集成的以下指标。有关更多信息,请参阅 将 Amazon Step Functions 与其他服务一起使用。
指标 | 描述 |
---|---|
ServiceIntegrationRunTime |
服务任务开始时间与关闭时间之间的时间间隔(毫秒)。 |
ServiceIntegrationScheduleTime |
服务任务保持在计划状态的时间间隔(毫秒)。 |
ServiceIntegrationTime |
服务任务排定时间与关闭时间之间的时间间隔(毫秒)。 |
ServiceIntegrationsFailed |
失败的服务任务数。 |
ServiceIntegrationsScheduled |
计划的服务任务数。 |
ServiceIntegrationsStarted |
已开始的服务任务数。 |
ServiceIntegrationsSucceeded |
已成功完成的服务任务数。 |
ServiceIntegrationsTimedOut |
关闭时超时的服务任务数。 |
Step Functions 服务集成指标的维
维度 | 描述 |
---|---|
|
集成服务的资源 ARN。 |
服务指标
这些区域有:AWS/States
命名空间包括 Step Functions 服务的以下指标。
指标 | 描述 |
---|---|
ThrottledEvents
|
已被限制的请求的计数。 |
ProvisionedBucketSize |
每秒可用请求的计数。 |
ProvisionedRefillRate |
每秒允许进入存储桶中的请求的计数。 |
ConsumedCapacity |
每秒请求的计数。 |
Step Functions 服务度量的维度
维度 | 描述 |
---|---|
|
筛选数据以显示状态转换指标。 |
API 指标
这些区域有:AWS/States
命名空间包括 Step Functions API 的以下指标。
指标 | 描述 |
---|---|
ThrottledEvents
|
已被限制的请求的计数。 |
ProvisionedBucketSize |
每秒可用请求的计数。 |
ProvisionedRefillRate |
每秒允许进入存储桶中的请求的计数。 |
ConsumedCapacity |
每秒请求的计数。 |
Step Functions API 指标的维度
维度 | 描述 |
---|---|
|
按照指定 API 名称的 API 来筛选数据。 |