AWS CLIを使ってstate machineの実行数を取得する

AWS

AWS CLIを使って、実行されているstate machineの数を取得する機会がありましたので、忘備録がてらまとめておきます。

aws stepfunctionslist-executionsコマンドを使います。

$ accountId=XXXXXXXXXXXX
$ stateMachineArn=arn:aws:states:ap-northeast-1:${accountId}:stateMachine:MyStateMachine
$ aws stepfunctions list-executions \
  --state-machine-arn ${stateMachineArn} \
  ----status-filter RUNNING

上記では、オプションのstate-machine-arnで指定したstate machineの実行のうち、ステータスがRUNNING、つまり、現在、実行されているものだけを取得します。

ステータスは、RUNNINGのほか、SUCCEEDED、FAILED、FAILED、ABORTED、PENDING_REDRIVEを指定できます。

さらに、実行されているstate machineの数を取得したいときは、以下のように、オプションのqueryが使えます。

aws stepfunctions list-executions --state-machine-ar ${stateMachineArn} --status-filter SUCCEEDED --query "length(executions)"

queryには、レスポンスデータをフィルタリングするための様々なJMESPath queryを使用できます。なお、JMESPathはJSONに対するクエリ言語です。

以上です。

  • https://awscli.amazonaws.com/v2/documentation/api/latest/reference/stepfunctions/list-executions.html
  • https://dev.classmethod.jp/articles/check-the-event-source-of-step-functions-state-machine-execution/
  • https://jmespath.org/
プロフィール
この記事を書いた人

30代半ばで未経験でプログラマーに転職し、日々奮闘中です
プログラミング、AI、NLP、キャリア関連などで少しでも役に立てる情報を発信していきます

ユウをフォローする
AWS
ユウをフォローする

コメント

タイトルとURLをコピーしました