Azure App Serviceのサイト正常性チェックを使ってみた

App Service,Azure

App Serviceに正常性チェックステータス(Health check status)というメトリックがあり、WEBサイトの稼働状況(HTTPステータスが200かどうか)を確認出来ます。
App Serviceで正常性チェック有効化すると利用出来ます。

正常性チェックを使用して App Service インスタンスを監視する(MS社公式)

以前はARMテンプレートを操作したり複数インスタンスないと動作しない等色々制約がありました。
これがAzure Portalで非常に簡単に設定できるようになっています。

今回はApp Serviceの正常性チェック設定を試してみました。

スポンサーリンク

App Serviceの正常性チェックを設定

今回はhealth_check.htmlというファイルを配置してサイトの正常性を確認します。
事前にApp Serviceはデプロイ済みである事を前提に進めます。

設定手順

App Serviceのメニューで監視の項目にある正常性チェックを選択します。
正常性チェックの画面が表示されます。
デフォルトでは無効化されています。

正常性チェックを有効化します。
パスと負荷分散の項目が表示されます。

今回はパスに/health_Check.htmlとし負荷分散は5分に設定しました。

設定後保存をクリックします。

変更の保存の確認メッセージが表示されますので、続行をクリックします。

これで設定自体は完了です。非常に簡単に設定が出来ました。

App Service 正常性チェックの動作確認 

正常性チェック Statusの動作確認してみます。

health_Check.htmlを作成する

最初に正常性チェック用のHTMLを作成します。

作成手順

App ServiceにSSHで接続します。

正常性チェック用のHTMLファイルを作成します。viで作成します。HTMLファイルの内容を記載します。編集が終わったらwq!で保存終了します。

最後にlsコマンドでファイルが出来ている事を確認します。

※事前に作成したファイルをアップロードするでも良いと思います。

root@XXXXX:/home# vi /home/site/wwwroot/health_Check.html

【HTMLファイル内容】
<html>
<head>
<meta charset="utf-8″>
<title>health_Check</title>
</head>
<body>
health_Check
</body>
</html>

root@XXXXX:/home# ls -alh /home/site/wwwroot/ |grep health_check
rwxrwxrwx 1 nobody nogroup 533 Mar 13 2021 health_check.html

正常性チェックメトリックを確認

正常性チェックのメトリックを確認します。

確認手順

メニューからメトリックを選択します。
設定の中にあるメトリックで正常性チェックステータス(Health check status)を選択します。

設定後確認すると100となっています。
サイトが正常に動作していると判断されている事が分かります。

次にファイルを移動してみて、変化を確認します。
mvコマンドでhealth_Check.htmlファイルを移動します。

root@XXXXX:/home# mv /home/site/wwwroot/health_Check.html /home/site/wwwroot/health_Check.bak

正常性チェックがエラーになっている事が分かります。
正しくサイトの正常性を検知出来ている事が分かります。

Azure Monitorでも正常性チェック Statusを確認可能

Azure Monitorのメトリックアラート設定も可能です。

設定手順
Azure Monitorのメトリック(App Service)にも正常性チェックステータス(Health check status)という項目があります。
これを利用する事でサイト正常性(App Service正常性)の監視が出来ます。

Application InsightsのURL PINGを使ったURL監視はこちら。

App Serviceのリソース監視はこちら。

スポンサーリンク