トリガー - AWS Glue

トリガー

Triggers API では、AWS Glue におけるジョブトリガーの作成、更新、削除と、開始および停止に関連するデータ型と API について説明します。

データ型

トリガー構造

特定のトリガーに関する情報です。

フィールド
  • Name – UTF-8 文字列、1~255 バイト長、Single-line string pattern に一致。

    トリガーの名前。

  • WorkflowName – UTF-8 文字列、1~255 バイト長、Single-line string pattern に一致。

    トリガーに関連付けられているワークフローの名前。

  • Id – UTF-8 文字列、1~255 バイト長、Single-line string pattern に一致。

    将来の利用のために予約されています。

  • Type – UTF-8 文字列 (有効な値: SCHEDULED | CONDITIONAL | ON_DEMAND | EVENT)。

    これがトリガーのタイプです。

  • State – UTF-8 文字列 (有効な値: CREATING | CREATED | ACTIVATING | ACTIVATED | DEACTIVATING | DEACTIVATED | DELETING | UPDATING)。

    現在のトリガーの状態。

  • Description – 説明文字列、2048 バイト長以下、URI address multi-line string pattern に一致。

    このトリガーの説明。

  • Schedule – UTF-8 文字列。

    スケジュールを指定するために使用される cron 式 (ジョブとクローラーの時間ベースのスケジュールを参照してください。) たとえば、毎日 12:15 UTC に何かを実行するには、cron(15 12 * * ? *) を指定します。

  • Actionsアクション オブジェクトの配列。

    このトリガーによって開始されるアクション。

  • Predicate述語 オブジェクト。

    このトリガーの述語は、いつトリガーを起動するかを定義します。

  • EventBatchingConditionEventBatchingCondition オブジェクト。

    EventBridge イベントトリガーが起動する前に、満たす必要があるBatch 条件 (指定された受信イベント数またはバッチ時間ウィンドウの期限切れ)。

TriggerUpdate 構造

トリガーの更新に使用する情報を提供するために使用される構造です。このオブジェクトは、前のトリガー定義を完全に上書きして更新します。

フィールド
  • Name – UTF-8 文字列、1~255 バイト長、Single-line string pattern に一致。

    将来の利用のために予約されています。

  • Description – 説明文字列、2048 バイト長以下、URI address multi-line string pattern に一致。

    このトリガーの説明。

  • Schedule – UTF-8 文字列。

    スケジュールを指定するために使用される cron 式 (ジョブとクローラーの時間ベースのスケジュールを参照してください。) たとえば、毎日 12:15 UTC に何かを実行するには、cron(15 12 * * ? *) を指定します。

  • Actionsアクション オブジェクトの配列。

    このトリガーによって開始されるアクション。

  • Predicate述語 オブジェクト。

    このトリガーの述語は、いつトリガーを起動するかを定義します。

  • EventBatchingConditionEventBatchingCondition オブジェクト。

    EventBridge イベントトリガーが起動する前に、満たす必要があるBatch 条件 (指定された受信イベント数またはバッチ時間ウィンドウの期限切れ)。

述語構造

トリガーがいつ起動するかを決定するトリガーの述語を定義します。

フィールド
  • Logical – UTF-8 文字列 (有効な値: AND | ANY)。

    1 つの条件のみが表示されている場合のオプションフィールドです。複数の条件が表示されている場合、このフィールドは必須です。

  • Conditions条件 オブジェクトの配列。

    トリガーがいつ起動するかを決定する条件のリスト。

条件の構造

トリガーが起動する条件を定義します。

フィールド
  • LogicalOperator – UTF-8 文字列 (有効な値: EQUALS)。

    論理演算子。

  • JobName – UTF-8 文字列、1~255 バイト長、Single-line string pattern に一致。

    JobRuns のこの条件が適用され、このトリガーが待機するジョブの名前。

  • State – UTF-8 文字列 (有効な値:STARTING | RUNNING | STOPPING | STOPPED | SUCCEEDED | FAILED | TIMEOUT | ERROR | WAITING | EXPIRED)。

    条件の状態。現在、トリガーがリッスンできるジョブ状態は SUCCEEDEDSTOPPEDFAILED、および TIMEOUT のみです。トリガーがリッスンできるクローラー状態は SUCCEEDEDFAILED、および CANCELLED のみです。

  • CrawlerName – UTF-8 文字列、1~255 バイト長、Single-line string pattern に一致。

    この条件が適用されるクローラーの名前。

  • CrawlState - UTF-8 文字列 (有効値: RUNNING | CANCELLING | CANCELLED | SUCCEEDED | FAILED | ERROR).。

    この条件が適用されるクローラーの状態。

アクション構造

トリガーによって開始されるアクションを定義します。

フィールド
  • JobName – UTF-8 文字列、1~255 バイト長、Single-line string pattern に一致。

    実行されるジョブの名前。

  • Arguments – キーバリューペアのマップ配列。

    各キーは UTF-8 文字列。

    各値は UTF-8 文字列。

    このトリガーが起動するときに使用されるジョブ引数。このジョブ実行では、ジョブ定義自体に設定されているデフォルト引数を置き換えます。

    独自のジョブ実行スクリプトが消費する引数だけでなく、AWS Glue が消費する引数もここで指定できます。

    独自のジョブ引数を指定および使用する方法については、デベロッパーガイドのトピック「Calling AWS Glue APIs in Python」を参照してください。

    AWS Glue がジョブを設定するために使用するキーと値のペアについては、デベロッパーガイドのトピック「Special Parameters Used by AWS Glue」を参照してください。

  • Timeout - 数値 (整数)。1 以上。

    JobRun のタイムアウト (分)。ジョブ実行が終了済みになって TIMEOUT ステータスに入るまでに、ジョブ実行でリソースを消費できる最大時間です。デフォルト値は 2,880 分 (48 時間) です。これにより、親ジョブで設定したタイムアウト値が上書きされます。

  • SecurityConfiguration – UTF-8 文字列、1~255 バイト長、Single-line string pattern に一致。

    このジョブで使用される SecurityConfiguration 構造の名前。

  • NotificationPropertyNotificationProperty オブジェクト。

    ジョブ実行通知の構成プロパティを指定します。

  • CrawlerName – UTF-8 文字列、1~255 バイト長、Single-line string pattern に一致。

    このアクションで使用されるクローラーの名前。

EventBatchingCondition 構造

EventBridge イベントトリガーが起動する前に、満たす必要があるBatch 条件 (指定された受信イベント数またはバッチ時間ウィンドウの期限切れ)。

フィールド
  • BatchSize必須: 数値 (integer)。1~100。

    EventBridge イベントトリガーが発生する前に、Amazon EventBridge から受信する必要のあるイベントの数。

  • BatchWindow – 数値 (integer)。1~900。

    EventBridge イベントトリガーが起動するまでの時間 (秒単位)。最初のイベントを受信したときからの時間です。

操作

CreateTrigger アクション (Python: create_trigger)

新しいトリガーを作成します。

リクエスト
  • Name – 必須: UTF-8 文字列、1~255 バイト長、「Single-line string pattern」に一致。

    トリガーの名前。

  • WorkflowName – UTF-8 文字列、1~255 バイト長、Single-line string pattern に一致。

    トリガーに関連付けられているワークフローの名前。

  • Type必須: UTF-8 文字列 (有効な値: SCHEDULED | CONDITIONAL | ON_DEMAND | EVENT)。

    新しいトリガーのタイプ。

  • Schedule – UTF-8 文字列。

    スケジュールを指定するために使用される cron 式 (ジョブとクローラーの時間ベースのスケジュールを参照してください。) たとえば、毎日 12:15 UTC に何かを実行するには、cron(15 12 * * ? *) を指定します。

    このフィールドは、トリガータイプが SCHEDULED の場合に必要です。

  • Predicate述語 オブジェクト。

    新しいトリガーがいつ起動するかを指定する述語です。

    このフィールドは、トリガータイプが CONDITIONAL の場合に必要です。

  • Actions – 必須: アクション オブジェクトの配列。

    このトリガーが起動したときに開始されるアクション。

  • Description – 説明文字列、2048 バイト長以下、URI address multi-line string pattern に一致。

    新しいトリガーの説明。

  • StartOnCreation – ブール。

    作成時に SCHEDULED および CONDITIONAL トリガーを起動するには、true に設定します。True は ON_DEMAND トリガーではサポートされません。

  • Tags – キーと値のペアのマップ配列。50 ペア以下。

    各キーは UTF-8 文字列で、1~128 バイト長です。

    各値は UTF-8 文字列で、256 バイト長以下です。

    このトリガーで使用するタグ。トリガーへのアクセスを制限するためにタグを使用することができます。AWS Glue のタグの詳細については、デベロッパーガイドの「AWS Tags in AWS Glue」を参照してください。

  • EventBatchingConditionEventBatchingCondition オブジェクト。

    EventBridge イベントトリガーが起動する前に、満たす必要があるBatch 条件 (指定された受信イベント数またはバッチ時間ウィンドウの期限切れ)。

レスポンス
エラー
  • AlreadyExistsException

  • EntityNotFoundException

  • InvalidInputException

  • IdempotentParameterMismatchException

  • InternalServiceException

  • OperationTimeoutException

  • ResourceNumberLimitExceededException

  • ConcurrentModificationException

StartTrigger アクション (Python: start_trigger)

既存のトリガーを開始します。さまざまなタイプのトリガーの開始方法については、「ジョブのトリガー」を参照してください。

リクエスト
  • Name – 必須: UTF-8 文字列、1~255 バイト長、「Single-line string pattern」に一致。

    開始するトリガーの名前。

レスポンス
  • Name – UTF-8 文字列、1~255 バイト長、「Single-line string pattern」に一致。

    開始されたトリガーの名前。

エラー
  • InvalidInputException

  • InternalServiceException

  • EntityNotFoundException

  • OperationTimeoutException

  • ResourceNumberLimitExceededException

  • ConcurrentRunsExceededException

GetTrigger アクション (Python: get_trigger)

トリガーの定義を取得します。

リクエスト
  • Name – 必須: UTF-8 文字列、1~255 バイト長、「Single-line string pattern」に一致。

    取得するトリガーの名前。

レスポンス
エラー
  • EntityNotFoundException

  • InvalidInputException

  • InternalServiceException

  • OperationTimeoutException

GetTriggers アクション (Python: get_triggers)

ジョブに関連付けられているすべてのトリガーを取得します。

リクエスト
  • NextToken – UTF-8 文字列。

    継続トークン (これが継続呼び出しの場合)。

  • DependentJobName – UTF-8 文字列、1~255 バイト長、Single-line string pattern に一致。

    トリガーを取得するジョブの名前。このジョブを開始できるトリガーが返されます。このようなトリガーがない場合、すべてのトリガーが返されます。

  • MaxResults – 1 未満または 200 を超えない数値 (整数)。

    応答の最大サイズ。

応答
  • TriggersTrigger トリガー) オブジェクトの配列。

    指定されたジョブのトリガーのリスト。

  • NextToken – UTF-8 文字列。

    リクエストされたトリガーのすべてがまだ返されていない場合は、継続トークン。

エラー
  • EntityNotFoundException

  • InvalidInputException

  • InternalServiceException

  • OperationTimeoutException

UpdateTrigger アクション (Python: update_trigger)

トリガー定義を更新します。

リクエスト
  • Name – 必須: UTF-8 文字列、1~255 バイト長、「Single-line string pattern」に一致。

    更新するトリガーの名前。

  • TriggerUpdate – 必須: TriggerUpdate オブジェクト。

    トリガーの更新に使用する新しい値。

レスポンス
エラー
  • InvalidInputException

  • InternalServiceException

  • EntityNotFoundException

  • OperationTimeoutException

  • ConcurrentModificationException

StopTrigger アクション (Python: stop_trigger)

指定されたトリガーを停止します。

リクエスト
  • Name – 必須: UTF-8 文字列、1~255 バイト長、「Single-line string pattern」に一致。

    停止するトリガーの名前。

レスポンス
  • Name – UTF-8 文字列、1~255 バイト長、「Single-line string pattern」に一致。

    停止したトリガーの名前。

エラー
  • InvalidInputException

  • InternalServiceException

  • EntityNotFoundException

  • OperationTimeoutException

  • ConcurrentModificationException

DeleteTrigger アクション (Python: delete_trigger)

指定されたトリガーを削除します。トリガーが見つからない場合、例外はスローされません。

リクエスト
  • Name – 必須: UTF-8 文字列、1~255 バイト長、「Single-line string pattern」に一致。

    削除するトリガーの名前。

レスポンス
  • Name – UTF-8 文字列、1~255 バイト長、「Single-line string pattern」に一致。

    削除されたトリガーの名前。

エラー
  • InvalidInputException

  • InternalServiceException

  • OperationTimeoutException

  • ConcurrentModificationException

ListTriggers アクション (Python: list_triggers)

この AWS アカウントのすべてのトリガーリソース、または指定されたタグを持つリソースの名前を取得します。このオペレーションにより、アカウントで利用可能なリソースとその名前を確認できます。

このオペレーションはオプションの Tags フィールドを受け取ります。このフィールドを応答のフィルターとして使用すると、タグ付きリソースをグループとして取得できます。タグフィルタリングの使用を選択した場合は、タグが付いたリソースのみが取得されます。

リクエスト
  • NextToken – UTF-8 文字列。

    継続トークン (これが継続リクエストの場合)。

  • DependentJobName – UTF-8 文字列、1~255 バイト長、Single-line string pattern に一致。

    トリガーを取得するジョブの名前。このジョブを開始できるトリガーが返されます。このようなトリガーがない場合は、すべてのトリガーが返ります。

  • MaxResults – 1 未満または 200 を超えない数値 (整数)。

    返されるリストの最大サイズ。

  • Tags – キーと値のペアのマップ配列。50 ペア以下。

    各キーは UTF-8 文字列で、1~128 バイト長です。

    各値は UTF-8 文字列で、256 バイト長以下です。

    これらのタグ付きリソースのみを返すように指定します。

レスポンス
  • TriggerNames – UTF-8 文字列の配列。

    アカウント内のすべてのトリガーの名前、または指定されたタグを持つトリガーの名前。

  • NextToken – UTF-8 文字列。

    継続トークン (戻されたリストに最後に使用可能なメトリクスが含まれていない場合)。

エラー
  • EntityNotFoundException

  • InvalidInputException

  • InternalServiceException

  • OperationTimeoutException

BatchGetTriggers アクション (Python: batch_get_triggers)

指定されたトリガー名のリストのリソースメタデータのリストを返します。ListTriggers オペレーションを呼び出した後で、このオペレーションを呼び出すことで、アクセス許可が付与されているデータにアクセスできます。このオペレーションは、タグを使用するアクセス許可条件を含め、すべての IAM のアクセス許可をサポートします。

リクエスト
  • TriggerNames必須: UTF-8 文字列の配列。

    トリガー名のリスト。これは ListTriggers オペレーションから返される名前です。

応答
  • TriggersTrigger トリガー) オブジェクトの配列。

    トリガー定義のリスト。

  • TriggersNotFound – UTF-8 文字列の配列。

    トリガーの名前のリストが見つかりません。

エラー
  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException