Flex Gateway API アラートの使用

接続モードで Flex Gateway の API アラートを使用することで、次のような API の異常動作を知らせるためのメール通知を追加して設定できます。

  • 60 秒を超える API 応答時間

  • 30 秒間で 1000 件を超える API 要求

下記の​「API アラートの追加」​を参照してください。

API アラートのタイプ

次のアラートを追加すると、それぞれの状況を通知することができます。

  • Total Request Count (合計要求数): ユーザーが指定された期間で許可されている回数を超えて API にアクセスを要求する。1 ~ 999999999 の期間値を指定します。データのバーストを回避するために、期間は絶対時間 (分) 範囲ではなく、スライディングウィンドウとして実装されます。 「スライディングウィンドウ」​を参照してください。

  • Average Response Time (平均応答時間): API の応答時間が指定されたタイムアウト期間を超えている。

  • Response Codes (応答コード): 要求を受け取ると、API は HTTP コードの 400、401、403、404、408、500、502、503、または 3 桁のカスタムコードを返します。

  • Policy Violation (ポリシー違反): API を管理するポリシーで違反が発生している。

API アラートの仕組み

API アラートは以下の場合にのみトリガーされます。

  • API の状態が変化した

    新しく作成したアラートで状態が定義されていない場合は、最初の状態の変更が検出されない可能性があります。

  • アラート条件が指定期間に渡って成立した

    たとえば、API が HTTP コード 500 を 10 分間に 5 回以上返した場合にトリガーされるようにアラートを設定してある場合、HTTP コード 500 が 10 分間に 1 回しか返されなかったときには、そのアラートはトリガーされません。

API アラートを設定するときには、アラートに関するメール通知を受信するビジネスグループユーザーや組織外のユーザーを選択できます。通知には、重要度レベルで指定されたようにアラートをトリガーするイベントに関する情報が含まれます。

API アラートは ​no-reply@mulesoft.com​ から送信されます。これはカスタマイズできません。
  • 1 つは、アラートについて説明するメールです。

    Your API, CesarDemoAPI - Basic:151 (Environment: "NewOne"), has received greater than 2 requests within 1 consecutive periods of 1 minutes.

  • もう 1 つは、アラートがいつ解決されるかを通知するメールです。

    Your API Version, jsonplaceholderapi - 1.0.development, is no longer in an alert state.The number of policy violations was not greater than 1 in the last 1 consecutive periods of 1 minutes.

API Manager は、最初の 2 件の通知メールのセットを送信した後で、次のアラート期間が始まるまでアラートのリスンを停止します。この方法で反復する通知メールが防止されます。

始める前に

アラートを表示および削除するには、次を確認してください。

  • API アラートを表示および削除するための​「Manage Alerts (アラートの管理)」​権限。

  • アラートの表示のみを行うための​「View Alerts (アラートの表示)」​権限。

API アラートの追加

API を追跡および管理するには、1 つ以上の API アラートを API インスタンスに追加できます。各自の要件に基づいて、さまざまな​種別のアラート​を追加します。

次の表は、API インスタンスごとのアクティブなアラート数を示しています。

Unresolved include directive in modules/ROOT/pages/flex-use-api-alerts.adoc - include::reuse::partial$billing/pricing.adoc[]

すべてのサブスクリプションで、アクティブでないアラートは必要に応じて何個でも使用できます。

アクティブなアラートの最大数に達した場合は、アクティブなアラートを一時停止または削除することで、新しいアラートを作成できるようになります。

アラートは、作成時にデフォルトで有効化されます。この設定は変更できません。

自動ポリシー​で保護されている API インスタンスにはアラートを追加できません。

API アラートを追加する手順は、次のとおりです。

  1. [API Manager]​ > ​[API Administration (API 管理)]​ に移動して、アラートを追加する API インスタンスをクリックします。

  2. 左側のナビゲーションペインから、​[Alerts (アラート)]​ > ​[New alert (新規アラート)]​ を選択します。

  3. 表示されているアラートオプションの値を指定します。

    • Name (名前)​:

      アラート名を入力します (例: trial-alert​)。不要な場合はアラートをいつでも削除できます。

    • Severity (重要度)​:

      アラートの重要度を選択します。

      • Info (情報)

        トリガーされた時点で直ちに対応する必要がないアラートに割り当てます。この重要度は、メトリクスを受動的に監視する必要があることを示しています。

      • Warning (警告)

        トリガーされた時点で直ちに対応する必要があるアラートに割り当てます。この重要度は、アラートを綿密に監視する必要があることを示しています。

      • Critical (重大)

        トリガーされた時点で直ちに対応する必要があるアラートに割り当てます。この重要度は、アラートに直ちに対応する必要があることを示しています。

  4. アラート条件を指定します。

    • Metric (メトリクス)

      アラートをトリガーする条件。

    • Logic (ロジック)

      [When number of occurrences are (発生回数)]​ 項目と ​[For at least [number of] minutes ([ ] 分以上)]​ 項目で定義される発生率に基づいた、アラートをトリガーするタイミング。 アラート条件には最大 10 個の応答コードを選択できます。

  5. メール通知を設定します。

    • Subject (件名)

      アラートがトリガーされたときに送信されるアラートメールの件名。件名には変数を含めることができます。​変数定義​を参照してください。

    • メッセージ

      アラートがトリガーされたときに送信されるメールの本文テキスト。メッセージ本文には変数を含めることができます。​変数定義​を参照してください。

    • Recipients (受信者)

      アラートメールの受信者。最大 20 個のプラットフォームユーザー ID を選択し、最大 20 個のメールアドレスを入力できます。

  6. [Create (作成)]​ をクリックします。

アラートの作成中は ​[Pending (保留中)]​ と表示されます。API がトラフィックを受け取ると、アラートの状態は ​[OK]​ に変わります。また、値に応じて、アラートは ​[OK]​ または ​[Alerting (アラート)]​ に移行します。

アラートメールテンプレート

基本アラートメールの ​[Subject (件名)]​ 項目と ​[Message (メッセージ)]​ 項目で次の変数を使用できます。

各変数の説明については、​変数定義​を参照してください。

Table 1. アラートの変数
アラート 該当する変数

Total Request Count (合計要求数)

  • ${severity}

  • ${operator}

  • ${threshold}

  • ${period}

  • ${value}

  • ${condition}

  • ${organization}

  • ${environment}

  • ${apiLink}

  • ${dashboardLink}

  • ${api}

  • ${policy}

Average Response Time (平均応答時間)

Response Codes (応答コード)

Policy Violations (ポリシー違反)

Table 2. 変数定義
変数 定義

${apiLink}

トリガーされた API の URL。

${alertState}

アラートがトリガーされたときのアラートの状態。

使用可能な値は ​OK​ または ​Alerting​ です。

${comparison}

* Above (上回る)、Above or equal (上回るまたは等しい)、Equal (等しい)、Below or equal (下回るまたは等しい)、Below (下回る)

${condition}

アラートがトリガーされるメトリクス。

${environment}

リソースがデプロイされている環境の名前。

${operator}

< > =​ などの演算子。

${organization}

アラートを所有する組織の名前。

${period}

測定する期間。

${severity}

アラートの重要度。

${threshold}

アラートをトリガーする期間での数

${value}

アラートをトリガーするメトリクスの値。

API アラートの一時停止と編集

アラートを一時停止すると、アラートは ​[Paused (一時停止)]​ に移行します。

既存のアラートは、次の手順で編集できます。

  1. API Manager の左側のナビゲーションバーで、​[API Administration (API 管理)]​ をクリックします。

  2. API インスタンス、および編集するバージョンをクリックし、​[Alerts (アラート)]​ をクリックします。

  3. 編集したいアラートの 3 つのドットのアイコン (​5%​) をクリックして、​[Edit (編集)]​ を選択します。

    アラートの編集

API アラートのテスト

API アラートをテストするには、まず Flex Gateway を作成します。以下の手順に従って Flex Gateway を開始してアラートをテストしてください。

API アラートの表示と削除

アラートを表示および削除する手順は、次のとおりです。

  1. API Manager から、​[API Administration (API 管理)] で API インスタンス​をクリックし、​[Alerts (アラート)]​ を選択します。

    アラートの表示と追加
  2. リスト内のアラートを展開します。

    アラートのオプションに関する詳細が表示されます。

  3. 削除したいアラートの 3 つのドットのアイコン (​5%​) をクリックして、​[Delete (削除)]​ を選択します。アラートの編集中に削除することもできます。