AzurePaaS研究サイト

AzurePaaS研究サイト

~理解しずらい情報をシンプルにお伝えします~

Azureサービス稼働状況とユーザアプリケーション稼働状況の確認機能(正常性チェック・リソース正常性)

正常性チェック

 
AppService/Functionsにデプロイしたユーザのアプリケーションが正常に稼働しているかどうかを確認できる機能です。「正常の定義」については、ユーザが設定したプログラムから正常200-299ステータスが返却されればAzure側が正常と判断するといった具合になります。
 
公式ドキュメント:正常性チェック

docs.microsoft.com

 

正常性チェックとは、Azure内部で何をしているのか

正常性チェックは、アプリケーションへの指定パスへのシステムからのPingの結果(レスポンス 200 - 299 かどうか)をもとに、アプリケーションが正常稼働しているかを判断してます。
 

有効活用する方法(アラート検知を構成)

正常性チェックを有効にすることで利用できるようになるメトリックがあるため、そのメトリックを有効活用できます。
 
具体的には、正常性チェックを有効にすると「Health check status」のメトリックを利用できるようになるので、メトリックアラート検知(Health check status の値が異常状態に変化した場合にメール通知を行う)を構成するなどができます。
 

インスタンスがアイドル状態になるだけで異常と判定されてしまうのか

AppService/Functionsのアプリケーションに一定の時間リクエストが送られてこない場合、インスタンスがアイドル状態になり、Ping 応答が 200 - 299 以外になる可能性があります。
 
その回避方法として、常時接続機能(Always On)を有効化しておくことをオススメします。
 
 
 

リソース正常性

 
Azure プラットフォーム側のサービス自体が正常に提供できているか・データセンターなどが正常に稼働できているかを確認できる機能です。
 
AzureFunctions(関数アプリ) やAzureStorageAccount(ストレージアカウント) が正常にサービス提供できていない(Microsoftのどこかで障害が発生する)と、ユーザのシステムが正常に動作しない場合が発生してしまいます。

有効活用する方法(アラート検知を構成)

正常性チェックと同じように、リソース正常性でも、アラート検知によるメール通知などを構成できます。
 
たとえば、AzureAppService/AzureFunctions/AzureStorageAccountが正常にサービスを提供できていない場合、メールで通知されるように構成できます。

Azure側の環境が正常稼働しているか確認(アプリでエラーが発生したらこれを確認)

Azure プラットフォームが正常に稼働しているかどうかを手動で確認したい場合は、以下の公式サイトがあります。使用するタイミングとしては、たとえばAppService/Functionsのアプリケーションを最近何も変更していないのにエラーになり始めてしまった場合に、Azure側が異常な状態になっていないか確認をしたりします。がついているとこのリージョンで障害が発生しているんだな、ということがわかるときがあります。
 
ただ、いずれかのリージョン内すべてのリソースに影響が出るような障害でないと以下のページではつかないようになっています。一部のユーザのみに影響が出る障害の場合は、リソース正常性画面で自分のリソースに影響が出ているかを確認できます。
 
公式ドキュメント:Azure Status

status.azure.com

以上です。
 

ご意見・ご要望はこちらへ