WebAppsに対してPing監視を行う

はじめに
Webサービスを利用する場合、Webサービスに対して定期的にPing監視を行いたいという要望は多くあります。
Azureにおける「監視機能」は、このブログでも取り上げている通りまだまだ機能的に未成熟な部分があり、特に遅延が発生し得る、応答時間のSLAが長いといった仕様は、機会損失を起こしかねない大きなデメリットと言えるでしょう。
ただし、AzureのPaaS型WebサービスであるWebAppsにおいては、極めて簡単にPing監視の設定を入れることが可能です。この機能により、通知までの遅延リスクを極めて抑えた、即時性の高い監視が可能となります。
本記事では、この監視設定のポイント・価格、設定手順について紹介します。

 

ポイント・価格
WebAppsでは簡単に以下の監視が可能です。
・Ping監視
-複数ロケーションからの通信
-特定文字列が表示されていることの確認
コスト:月額11.20円
Ping監視自体は無償だが、アラートメール費用として上記料金が発生(アラートメール10個まで上記料金)

・複数ステップの監視(有償)
コスト:月額1,131.20円
複数ステップのテストにつき、1,120円が発生し、加えてアラートメール費用として11.20円が発生

 

設定手順
以下手順では、「5分以上・3つの拠点からのPing応答が失敗となる場合に、メールを送信する」という監視設定を行います。

1.Azureポータルにログインします。

2.監視を行いたいWebAppsの画面を開きます。

3.「Application Insights」をクリックし、「Setup Application Insights」をクリックします。
※既にWebAppsに対してApplication Insightsの設定がされていれば◎までスキップしてください。

4.既存のApplication Insightsを使う場合は、「Select existing resource」を選択し、任意のApplication Insightsを選択してください。
新規のApplication Insightsを使う場合は、「Create new resource」を選択し、任意の名前、リージョンを入力してください。
アプリケーションのフレームワークを選択してください。
最後に「OK」をクリックしてください。

5.「Continue」をクリックしてください。

6.「View more in Application Insights」をクリックします。

7.Application Insightsの画面が表示後、「Availability」→「Add test」をクリックします。

8.以下の項目を設定してください。
【基本】
・Test name:テスト名を入力してください。
・Test type:「URL ping test」を選択してください。
・URL:監視対象URLを入力してください。
・Parse dependent requests:任意で入力してください。(Ping応答時間を、対象URL内の画像等のオブジェクト全てを受信する時間として計測するか設定できます。)
・Enable retries for availability test failures:任意で入力してください。(応答失敗時の再試行の有無)
・Test frequency:任意で入力してください。(Pingテストの間隔)
・Test locations:任意で入力してください。(Pingテストの送信場所)

【Success criteria】
・Test Timeout:任意で入力してください。(結果判断の閾値、ここで設定した時間応答がないと失敗となります。)
・HTTP response/Status code must equal:200と入力してください。
・Content match/Content must contain:任意で入力してください。(任意のテキスト文字列の存在があるかを判定可能です。)
・Alert type:「Classic」を選択してください。

【Alerts】
・Status:「Enabled」を選択してください
・Alert locations threshold:「3」としてください。
・Alert failure time window:「5 minutes」を選択してください。
・Send alert emails to subscription admins:任意で入力してください。(サブスクリプション管理者へのメールアラート送信有無)
・Send alert emails to these enail addresses:アラートを受信するメールアドレスを入力してください。
・Webhook:任意で入力してください。

9.以上で作業は終了です。

 

終わりに
Webサービスと監視の設定は切っても切り離せない重要な機能ですが、WebAppsにおいては極めて簡単に設定が可能です。
また、任意の文字列を含むかのテストもできるため、HTTP応答だけじゃ不安な方は、こちらの機能を利用するのも良いかと思います。
Ping監視だけであればコストもほぼかからないため、上記作業は構築とセットで実施し、活用していきましょう。

注意事項・免責事項

※技術情報につきましては投稿日時点の情報となります。投稿日以降に仕様等が変更されていることがありますのでご了承ください。

※公式な技術情報の紹介の他、弊社による検証結果および経験に基づく独自の見解が含まれている場合がございます。

※これらの技術情報によって被ったいかなる損害についても、当社は一切責任を負わないものといたします。十分な確認・検証の上、ご活用お願いたします。