翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
を使用した Step Fun CloudWatch
モニタリングは、AWS Step Functions と AWS ソリューションの信頼性、可用性、パフォーマンスを維持する上で重要な部分です。マルチポイント障害をより簡単にデバッグできるように、使用する AWS のサービスからモニタリングデータを収集する必要があります。ただし、Step Functions のモニタリングをスタートする前に、以下の質問に回答するモニタリング計画を作成する必要があります。
-
どのような目的でモニタリングしますか?
-
どのリソースをモニタリングしますか?
-
どのくらいの頻度でこれらのリソースをモニタリングしますか?
-
どのモニタリングツールを利用しますか?
-
誰がモニタリングタスクを実行しますか?
-
問題が発生したときに誰が通知を受け取りますか?
次のステップでは、通常の Step Functions パフォーマンスのベースラインを環境に確立します。これを行うには、さまざまな時間帯に、さまざまな負荷条件でパフォーマンスを測定します。Step Functions をモニタリングするには、モニタリングデータの履歴を保存することを検討します。このデータを、最新のパフォーマンスデータと比較するベースラインとして使用し、通常のパフォーマンスのパターンやパフォーマンスの異常を検出して、問題への対応を検討することができます。
例えば、Step Functions を使用すると、ハートビートのタイムアウトが原因で失敗したアクティビティや AWS Lambda タスクの数をモニタリングできます。パフォーマンスが確立したベースラインを下回った場合、ハートビート間隔を変更する必要が生じることがあります。
ベースラインを確立するには、少なくとも、次のメトリクスをモニタリングする必要があります。
-
ActivitiesStarted
-
ActivitiesTimedOut
-
ExecutionsStarted
-
ExecutionsTimedOut
-
LambdaFunctionsStarted
-
LambdaFunctionsTimedOut
以下のセクションでは、以下では、以下の Step Functions CloudWatch。これらのメトリクスを使用してステートマシンおよびアクティビティを追跡し、しきい値のアラームを設定できます。メトリクスは、AWS Management Console を使用して表示できます。
トピック
時間間隔を報告するメトリクス
Step Functions の一部 CloudWatch メトリクスは時間間隔、常にミリ秒単位で測定されます。これらのメトリクスは通常、ステートマシン、アクティビティ、Lambda 関数タイムアウトを設定できる実行段階に対応しており、わかりやすい名前が付いています。
例えば、ActivityRunTime
メトリクスは、アクティビティが実行をスタートしてから完了するまでの時間を測定します。同じ期間のタイムアウト値を設定できます。
左 CloudWatch コンソールでは、選択した場合に最良の結果になります平均時間間隔メトリックの表示統計として。
カウントを報告するメトリクス
Step Functions の一部 CloudWatch メトリクスは、結果をカウント。例えば、ExecutionsFailed
はステートマシンの実行が失敗した回数を記録します。
左 CloudWatch コンソールでは、選択した場合に最良の結果になります和カウントメトリクスの表示統計として。
実行メトリクス
AWS/States
名前空間には、以下の Step Functions 実行のメトリクスが含まれます。
メトリクス | 説明 |
---|---|
ExecutionTime |
実行のスタート時点から終了時点までの間隔 (ミリ秒単位)。 |
ExecutionThrottled |
調整済みの StateEntered イベントと再試行回数。これは StateTransition のスロットリングに関連しています。詳細については、状態のスロットリングに関連するクォータ デベロッパーガイドのAWS Step Functions を参照してください。 |
ExecutionsAborted |
中断または終了された実行の数。 |
ExecutionsFailed |
失敗した実行の数。 |
ExecutionsStarted |
スタートされた実行の数。 |
ExecutionsSucceeded |
正常に完了した実行の数。 |
ExecutionsTimedOut |
何らかの理由でタイムアウトした実行の数。 |
Express ワークフローの実行メトリクス
-AWS/States
名前空間には、以下の Step Functions Express ワークフローの実行のメトリクスが含まれます。
メトリクス | 説明 |
---|---|
ExpressExecutionMemory
|
エクスプレスワークフローによって消費された合計メモリ。 |
ExpressExecutionBilledDuration |
エクスプレスワークフローが課金される期間。 |
ExpressExecutionBilledMemory |
Express Workflow が課金される消費メモリ量。 |
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 関数メトリクスのディメンション
ディメンション | 説明 |
---|---|
|
Lambda 関数の ARN。 |
Lambda 関数メトリックスは、Lambda 関数 ARN を
Resource
フィールドに指定するタスク状態に対して発行されます。"Resource": "arn:aws:states:::lambda:invoke"
を使用するタスクの状態は、代わりにサービス統合メトリックを発行します。詳細については、「Step Functions で Lambda を呼び出す」を参照してください。
サービス統合メトリクス
AWS/States
名前空間には、Step Functions サービス統合に対する次のメトリクスが含まれます。詳細については、「他のサービスで AWS Step Functions を使用する」を参照してください。
メトリクス | 説明 |
---|---|
ServiceIntegrationRunTime |
サービスタスクの開始時点から終了時点までの間隔 (ミリ秒単位)。 |
ServiceIntegrationScheduleTime |
サービスタスクがスケジュール状態に留まる間隔 (ミリ秒単位)。 |
ServiceIntegrationTime |
サービスタスクがスケジュールされてから終了するまでの間隔 (ミリ秒単位)。 |
ServiceIntegrationsFailed |
失敗したサービスタスクの数。 |
ServiceIntegrationsScheduled |
スケジュールされたサービスタスクの数。 |
ServiceIntegrationsStarted |
開始したサービスタスクの数。 |
ServiceIntegrationsSucceeded |
正常に完了したサービスタスクの数。 |
ServiceIntegrationsTimedOut |
終了時にタイムアウトしたサービスタスクの数。 |
Step Functions サービス統合メトリクスのディメンション
ディメンション | 説明 |
---|---|
|
統合されたサービスのリソースの ARN。 |
サービスメトリクス
AWS/States
名前空間には、Step Functions サービスの次のメトリクスが含まれます。
メトリクス | 説明 |
---|---|
ThrottledEvents
|
スロットルされたリクエストの数。 |
ProvisionedBucketSize |
1 秒あたりに利用できるリクエストの数。 |
ProvisionedRefillRate |
バケットで許可される 1 秒あたりのリクエストの数。 |
ConsumedCapacity |
1 秒あたりのリクエストの数。 |
Step Functions サービスメトリックのディメンション
ディメンション | 説明 |
---|---|
|
データをフィルタリングして状態遷移メトリクスを表示します。 |
API のメトリクス
AWS/States
名前空間には、Step Functions API のため、以下のメトリクスが含まれます。
メトリクス | 説明 |
---|---|
ThrottledEvents
|
スロットルされたリクエストの数。 |
ProvisionedBucketSize |
1 秒あたりに利用できるリクエストの数。 |
ProvisionedRefillRate |
バケットで許可される 1 秒あたりのリクエストの数。 |
ConsumedCapacity |
1 秒あたりのリクエストの数。 |
Step Functions API メトリクスのディメンション
ディメンション | 説明 |
---|---|
|
指定された API 名の API にデータをフィルタリングします。 |