メインコンテンツへスキップ

トリガー

フローを作成する際、最初のノードは必ずフローを開始するトリガーノードになります。トリガーノードは、フロー内のすべての下流ノードにデータを提供します。このデータはフィルターや他のノードで使用できます。

What should start your flow

トリガーには次の4種類があります。

1 つのフローにはトリガーノードを 1 つだけ設定できます。スケジュール・Webhook・イベントトリガーは、フローが公開された後にのみ実行されます。手動トリガーは、公開済みのフローをエディタからオンデマンドで実行できます。

Custom schedule

Custom schedule は、特定の時間や繰り返し間隔でフローを実行する必要がある場合に便利です。例えば、毎日午前 9 時に Google Cloud Compute Engine インスタンスの利用率を確認する場合などです。

  • 設定オプション: Time zoneStart dateTimeFrequency

  • Frequency はフローがどの頻度でトリガーされるかを定義します。サポートされる値: DailyWeeklyMonthlyCustomRun once

    • Daily を選択すると、1 日の中で特定の時刻にフローを実行するようトリガーできます。実行間隔の最小値は 1 時間であり、24 時間あたり最大 24 回までスケジュールできます。

    • フローを繰り返し間隔で実行する必要がある場合は Custom を選択してください。サポートされる値: HourDayWeekMonth。例えば、2 時間ごと、2 週間ごとなどです。

    • Run once を選択すると、任意の時間に 1 回だけ実行するスケジュールを設定できます。これは、レガシーサーバー上の OS カーネルの更新や、メンテナンスウィンドウ中のパッチ適用など、一度限りの作業を行う場合に便利です。

以下はカスタムスケジュールの例です。

Condition configuration

Manual trigger

このタイプのトリガーは、フローをオンデマンドでのみ実行する場合に使用します。人による監督を確保しつつ柔軟性を提供し、必要に応じてフローの実行を制御できます。

手動トリガーでフローを開始するには、フローを公開した後、CloudFlow エディタ上部のバーで Run を選択してください。

Condition configuration

Webhook trigger

Webhook トリガーを使用すると、API からのデータを使用してフローを開始できます。そのため、API 呼び出しが可能な任意の外部システムがフローをトリガーできます。例えば、Zapier の Run flow アクションを使用してフローをトリガーできます。DoiT Integrations も参照してください。

データ構造を検出できるよう、JSON のサンプルを提供する必要があります。構造を検出すると、フローは後続のアクションに必要なフィールドを自動的に作成します。これにより、データはフローの一部となり、他のデータと同様に任意のアクティビティノードで使用できます。

Webhook trigger configuration

  • Webhook URL: このフローをトリガーするためのデータを送信するサービスの URL を指定します。

  • Sample JSON: データ構造を検出できるよう、JSON のサンプルを指定します。Detected structure を選択して、フィールドが正しく特定されていることを確認してください。正しくないと思われる場合は、JSON サンプルを修正して再度貼り付けてください。

  • Generate API token: トリガーノードから DoiT API token を作成し、DoiT Cloud Intelligence の Profile を開かずに済むようにします。すでに API トークンがある場合、このパネルには Profile ページの API トークンを管理 するためのリンクが表示されます。このトークンは DoiT API にのみ使用されます。

DoiT Cloud Intelligence event trigger

DoiT Cloud Intelligence が生成したイベントを使用してフローを開始するには、DoiT Cloud Intelligence イベントトリガーを使用します。イベントには次の 5 つのカテゴリがあります。

  • DoiT Cloud Intelligence events: フローの開始に使用できる DoiT Cloud Intelligence のイベント

  • cost and usage alerts を使用する場合に適用されます。 Alerts: コストまたは使用量の alert 条件が満たされたとき、または同じ期間(および任意の内訳)に対して後から解消されたときに発火します。

  • notification thresholds を設定した Budgets を使用する場合に適用されます。 Cloud Analytics budgets: 支出が予算アラートの閾値を上回ったときに発火します。これは、Alerts 上のメトリクスとディメンションに基づくルールである cost and usage alerts とは別のものです。

  • AWS のみで利用可能です。 AWS CloudTrail: AWS CloudTrail のイベント。例えば、EC2 インスタンスが起動または停止されたとき、RDS インスタンスが作成または変更されたときなどです。

  • anomaly detection(請求および/または real-time)が設定されている任意のクラウドで利用可能です。 Cost anomaly detection: コストのアノマリーが作成または更新されたときに発火します。

DoiT Cloud Intelligence events

DoiT Cloud Intelligence は、フローをトリガーするプラットフォームイベントを発行できます。DoiT Cloud Intelligence イベントを選択すると、フロー内で参照できるフィールドが Event payload details に表示されます。

Alerts

次のいずれかのアラートイベントが発生したときにフローをトリガーできます。これらは、条件が満たされたときや解消されたときに行われるアラート通知(メールや Zapier など)と同じ評価ロジックを使用します。

  • DoiT Alert Condition Satisfied: アラートの条件が満たされたとき(例: 評価対象期間のコストが閾値に達したとき)に発火します。ディメンション単位(サービスごとなど)で評価されるアラートの場合、トリガーしたディメンション値ごとにイベントが発行されることがあります。ペイロードには、値・評価対象期間・アラートの詳細(名前、閾値、メトリックなど)が含まれます。アラートによっては、全体の合計だけでなく、各アイテム(例: 各サービスや各プロジェクト)を個別にチェックする場合があります。このような場合、breakdown はどのアイテムがアラートをトリガーしたか(例: Compute Engine)を示し、breakdownLabel はそのアイテムのカテゴリ(例: Service)を示します。

  • DoiT Alert Condition Resolved: アラートが解消されたとき(例: 同じ期間においてコストが閾値を下回ったとき)に発火します。このアラートは DoiT Alert Condition Satisfied(同じアラート、期間、任意の内訳)と対応しているため、例えば Jira チケットをクローズしたり、条件が満たされたときに開始したフォローアップアクションを停止したりするフローを組み合わせることができます。

Budgets

DoiT Budget Threshold Reached イベントが発生したときにフローをトリガーできます。このイベントは、評価された支出が初めて budget アラートの閾値(例: 50%、80%、100% などの予算額)を上回ったときに発生します。ペイロードには、超えた閾値(thresholdPercentage)、現在の支出額と予算額、任意の予測日、閾値に到達した日時(triggeredAt)、および予算のメタデータ(id、名前、通貨、期間など)が含まれます。CloudFlow エディタでは、このイベントを選択すると Event payload details に正確なフィールド名が表示されます。複数の閾値を通過した場合、イベントには最も高い閾値のパーセンテージが反映されます。

注意

このイベントが発生するには、BudgetsConfigure budget notifications を組み合わせて使用し、アラート閾値を設定してください。

Cost anomaly detection

次のいずれかのコストアノマリーイベントが発生したときにフローをトリガーできます。

  • DoiT Cost Anomaly Acknowledged Changed: アノマリーが確認される、または確認情報が編集されたとき
  • DoiT Cost Anomaly Cost Changed: アクティブなアノマリーのコストが変化したとき
  • DoiT Cost Anomaly Created: 新しいコストアノマリーが検出されたとき
  • DoiT Cost Anomaly Severity Changed: アノマリーの重大度が変化したとき
  • DoiT Cost Anomaly Status Changed: ステータスが変更されたとき(例: Active から Inactive など)
  • DoiT Cost Anomaly Top SKUs Changed: アノマリーに対して最も影響の大きい SKU が変化したとき
注意

コストアノマリーに対するフローをトリガーするには、real-time cost anomaly detection を設定しておく必要があります。

Event trigger configuration

  • Select an event: 一覧から、フローをトリガーしたい DoiT Cloud Intelligence イベントを選択します。

  • Event payload details: 選択したイベント内で利用可能な参照フィールドの一覧が表示されます。これらはフロー内で参照できるフィールドです。

  • (オプション)Event payload filter: ペイロードフィールドに条件を追加し、受信イベントが条件に一致した場合にのみフローが実行されるようにします。例えば、特定のコストアノマリーの重大度、特定の AWS リソース ARN、特定の予算や予算閾値、その他イベントデータ内の値に対してのみフローを開始するフィルターとして使用できます。

Event payload filter

イベントペイロードに基づいて条件を追加することで、どのイベントでフローをトリガーするかをフィルターできます。1 つ以上のフィルター条件が定義されている場合、受信イベントが条件に一致したときにのみフローが実行されます。これにより、特定のイベントに対してのみ反応できるようになり、たとえば特定の重大度のコストアノマリーが発生したときや、特定のリソースを対象とする AWS CloudTrail イベントの場合にのみトリガーすることができます。

複数の条件を追加した場合、フローを継続するにはそれらすべてが true である必要があります。CloudFlow は AND ロジックを使用するため、すべての要件が満たされない限りフローは先に進みません。

情報

1 つのフィールドに対して複数の値を一度にチェックするには、InNot In などの演算子を使用してください。これにより、許可(またはブロック)されたアイテムのリストを作成できます。詳しくは、Filter operators を参照してください。

例:

  • フローが DoiT Cost Anomaly Created を待ち受けているが、すべての新しいアノマリーではなく、アノマリーが Critical のときだけ実行したい場合、次の条件を追加できます。

    • Fieldseverity

    • OperatorEqual to==

    • ValueCritical

    Event trigger filter example

  • AWS CloudTrail イベントについては、details.resourceArn フィールドに対して contains と本番環境 ARN の一部(または完全な ARN と共に Equal to==))を使用してフィルターし、その API アクティビティがそのリソースを対象とする場合にのみフローが実行されるようにできます。

  • 特定のクラウドフットプリントに AWS CloudTrail アクティビティを絞り込むには、複数の条件 を追加して、それぞれがすべて一致するようにします。たとえば、イベントが本番環境の AWS account かつ指定した Region のときだけフローを実行するようにします。

    • FielduserIdentity.accountIdOperatorEqual to==)— Value:12 桁の AWS アカウント ID(例:111122223333

    • FieldawsRegionOperatorEqual to==)— Value:対象とする Region コード(例:eu-west-1

    選択したイベントの Event payload details に表示されている名前を使用してください。入れ子になっているフィールドは、userIdentity.accountId のようにドット記法で表示されることがよくあります。

  • DoiT Budget Threshold Reached の場合、budget.budgetId でフィルターして特定の予算に対してのみフローが実行されるようにするか、thresholdPercentage(たとえば、Equal to==)と 100)でフィルターして、特定の閾値だけがフローを開始するようにします。Event payload details に表示されているフィールド名を使用してください。入れ子の予算フィールドは通常、budget 配下にあります。

フィルター条件を追加するには:

  1. Event payload filter+ Add condition を選択します。

  2. 条件を設定します。

    • Field:フィールドを選択して利用可能なフィールド一覧を表示するか、severitydetails.resourceArnbudget.budgetIdthresholdPercentage などのフィールドを手動で入力します。表示されるフィールドは、選択したイベントによって異なります。

    • Operator:比較演算子を選択します。利用可能な Filter operators は、フィールドのデータタイプによって異なります。

    • Value:比較対象の値を入力します。タイムスタンプフィールドの場合は日時ピッカーが表示されます。is null および is not null 演算子の場合、値入力は非表示になります。

    Set Event trigger filter

  3. Save を選択します。

    すべてが true でなければならない(AND)複数の条件を追加するには、含めたい各条件について + Add condition を選択してください。条件はいつでも編集または削除できます。

Automate event responses

フローが DoiT Cloud Intelligence イベントトリガー(DoiT Cloud Intelligence イベント、アラート、Cloud Analytics budgets、AWS CloudTrail、またはコストアノマリー検出)によって開始される場合、Slack への投稿、チケットの作成、是正アクションの実行などのレスポンスを自動化できます。下流ノードでは Event payload details のフィールドを参照してください。

  • Notification node を追加して、イベントの詳細をチームに送信します。メッセージ内でペイロードフィールド(たとえばアラートイベントの場合はアラート名と値、DoiT Budget Threshold Reached の場合は予算名と thresholdPercentage、コストアノマリーの場合はアノマリー ID とコスト、AWS CloudTrail イベントの場合はリソース ARN など)を使用してください。

  • Branch node を使用して、そのイベントのペイロード内のフィールドに応じて異なるステップを実行します。たとえば、コストアノマリーの重大度が高い場合だけ通知する、アラートのメトリック値が任意の数値を上回ったときに通知する、特定の予算閾値や budget.budgetId に一致する場合だけ通知する、あるいは breakdown やその他のディメンションフィールドが特定のプロジェクトまたはサービスに一致する場合だけ通知する、といったことができます。

Trigger node results

このセクションでは、下流ノードで参照できるトリガーノードの出力で利用可能なフィールドを一覧表示します。Webhook および DoiT Cloud Intelligence event トリガーの場合、ノード出力にはイベント固有のペイロードフィールド(たとえばアラート名と値、予算 ID と閾値、コストアノマリー ID とコスト)も含まれます。これらのフィールドはトリガーを設定する際に Event payload details に表示され、他のトリガー出力と同様に参照できます。

注意

ノードを設定する際は、通常、出力を参照する上流ノードを 1 つ選択します。Schedule トリガーノードのみ例外であり、その出力は、選択したノードに加えて、フロー内の任意のノードから参照できます。

トリガー結果には、従来形式と ISO 8601 形式の両方で日時が含まれます。API で ISO 8601 タイムスタンプが必要な場合は iso8601 オブジェクトを使用してください。既存の currentDatestartTime フィールドは後方互換性のために残されています。

NameDescriptionExample value
currentDate実行日(YYYY-MM-DD 形式)2026-02-09
currentDay月内の日(1–31)9
currentMonth月(1–12)2
currentYear4 桁の西暦年2026
customerIdDoiT の顧客または組織 IDABCDeFhijKLm1nopQrStUVwx
ownerEmailフロー所有者のメールアドレス[email protected]
startTimeUnix ミリ秒タイムスタンプ1770644776279
startTimeMillisUnix ミリ秒タイムスタンプ1770644776279
startTimeSecondsUnix 秒タイムスタンプ1770644776
userIdDoiT のユーザー IDaBBCDe1FG2hIJkL34MNO
iso8601ISO 8601 日時文字列を持つオブジェクト:
  • currentDate(YYYY-MM-DDT00:00:00.000Z)
  • startTime(YYYY-MM-DDTHH:mm:ss.sssZ)
currentDate: "2026-02-09T00:00:00.000Z", startTime: "2026-02-09T15:21:01.760Z"
variablesグローバルおよびローカルのフローバリアブルglobalVariables: {}, localVariables: {}
billingScopes顧客向けのクラウドプロジェクトおよびアカウント ID のリスト。各キーには idname を含むオブジェクトの配列が入ります。
  • google-cloud — GCP プロジェクト ID
  • amazon-web-services — AWS アカウント ID
  • microsoft-azure — Azure サブスクリプション ID
これらを下流ノードで使用して、クラウドスコープごとにループ処理したり、フィルタリングしたりします。
google-cloud: [{id: "my-project", name: "My GCP Project"}], amazon-web-services: [...], microsoft-azure: [...]
billingScopesRowCount3 つのプロバイダ(GCP + AWS + Azure)すべてを合わせたクラウドスコープの総数3
ヒント

billingScopes は、GCP プロジェクト、AWS アカウント、Azure サブスクリプションごとにアクションを実行する必要がある場合(たとえば、トリガーノードの Variables を参照するループやフィルターなど)に使用してください。

Event trigger example

トリガーからレスポンスを自動化できます。たとえば、Slack への投稿、チケットの作成、是正アクションの実行などです。

たとえば、DoiT Cost Anomaly Created によってトリガーされたフローでは、Branch node を使用して重大度が Critical のアノマリーだけをフィルタリングできます。その後、Notification node がアノマリー ID とコストを含むメッセージを送信します。同様に、DoiT Alert Condition Satisfied によってトリガーされたフローでは、アラート名、期間、値を含めてチャンネルに通知できます。DoiT Budget Threshold Reached によってトリガーされたフローでは、thresholdPercentagebudget.budgetId に基づいて分岐し、予算名と現在の支出額で通知できます。これらの値はトリガーノードの出力から取得され、任意の下流ノードにマッピングできます。