スタートガイド > 3. アラートを受け取って自動対応しよう > 3-7. アラートを受け取ったら、他システムのAPIを実行したい

3-7. アラートを受け取ったら、他システムのAPIを実行したい

アラートを受信したら、他システムのAPIを実行するケースの実現例を示します。

1. 要件

1-1. 監視対象サービス

  • アラートが発生したら、件名に ERROR を含むメールをOpsAidへ送信する

1-2. OpsAid

  • アラートを受信したら、他システムのAPI(https://service01/api/action)を実行する
    • POST形式で、以下のパラメータを付与する
      • key1: VALUE1
      • key2: VALUE2

2. OpsAidの登録内容

以下の内容で、OpsAid側のアラート受信準備を行います。

2-1. プロジェクト作成

1-1. プロジェクトを用意しように従って、アラートを受信するプロジェクトを作成します。 アラートを受信するプロジェクトが既に作成されている場合は、このセクションは飛ばして構いません。

プロジェクトのメールアドレスが発行されたら、メモを取っておきます。

2-2. 担当者ユーザーをプロジェクトに追加

2-1. で用意したプロジェクトに、担当者のユーザー01ユーザー02のユーザーを追加します。
すべてのユーザーに、電話番号を1件以上設定しておきます。

設定方法は

3-1. アラートが発生したら担当者に電話で通知したい
 > 2-2. 担当者ユーザーをプロジェクトに追加

を参照してください。

2-3. ルール登録

アラートを受信するプロジェクトに、ルールを1件登録します。
ルールの条件には以下の内容を設定します。

実行条件

  • キーワード条件

    • 「件名」に「ERROR」が「含まれる」

件名に ERROR を含むアラートを受信したら、このルールを適用します。

アクション

  • Webhook
    • URL: https://service01/api/action
    • METHOD: POST
    • 送信データ: JSON形式で記述
    {
        "key01": "VALUE01",
        "key02": "VALUE02"
    }

このルールが適用されたら、指定したメソッドと送信データでURLへリクエストを送信します。200 OKのレスポンスが返却された場合、結果[OK]でアクションを終了します。200 OK以外のレスポンスが返却された場合、結果[NG]でアクションを終了します。

ルール設定

  • ルールに合致した場合に作成するインシデントの初期設定

    • ステータス: 完了
    • 担当者: ユーザー01

    その他の項目は任意で設定します。

3. アラート受信時の動き

上記のルールをプロジェクトに登録した状態で、監視対象サービスでアラートが発生すると、以下の流れでアラートの自動対応が行われます。

  1. 監視対象サービスから、プロジェクトのメールアドレスへ向けて、件名にERRORを含むアラートを送信する
  2. OpsAidでプロジェクトがアラートを受信する
  3. プロジェクトに登録されたルールに、アラートがマッチするかチェックする。アラートの件名にERRORが含まれているので、作成したルールの実行条件にマッチする
  4. ルールの実行条件にマッチしたので、自動でルールのアクションが実行される
    • Slack(またはChatwork)へ投稿される
      • 投稿の内容に、アラートの内容が追加される
  5. ルールの実行条件にマッチしたので、自動でインシデントが起票される
  6. アクションの結果を受けて、ルールの実行結果が起票したインシデントに記録される
  7. 問題なく終了したら、インシデントのステータスが完了となる

以上で、OpsAidの自動対応が終了します。


以上の設定を行うことで、アラートを受信したら、他システムのAPIを実行するケースの実現が可能です。ユーザー独自のサービスにおいても、インターネットからアクセス可能なAPI等をご用意いただくことで、OpsAidから自動でアクセスすることが可能になります。

最後に

OpsAidの活用事例の紹介と設定例については以上となります。
ここまでご紹介した条件指定やアクション指定を組み合わせて、OpsAidは様々なケースに対する自動対応を行うことが可能です。ぜひ、OpsAidを活用してシステム管理の負担軽減にお役立てください。