APPS50 監視、パフォーマンス、スケーリングを使用したアプリの次のレベルへの移行
MicrosoftIgniteOsaka
1/23 session5 APPS50 監視、パフォーマンス、スケーリングを使用したアプリの次のレベルへの移行のメモです。
本セッションはデモ中心。
デモは下記セッション動画を参照。(英語)
状況
- 月曜日、休み明け
- 金曜の午後から一切売れてない
- すぐに修正してくれ
計画
- 問題の特定
- トラブルシューティング
- 修正
- 防止策
ApplicationInsights
- リクエスト数、応答時間、失敗率、例外
- ページビュー
- パフォーマンス
- カスタムイベントとメトリック
ApplicationInsights作成時に発行されるInstrumentionKeyを埋め込むことで集中管理できる。
React用のプラグインもあるみたい。
障害検出だけでなく、理由も説明される。
それをメールで送ることもできる。
障害の把握と修正
ApplicationInsightsを使うことで、分散トレーシングの画面が見れる。
障害ポイントの確認、さらに詳細を見ることでサービス内のどの処理でエラーが発生しているか確認できる。
AzureMonitor for Containers
- アプリケーションログ
- OSメトリクス
- コンテナメトリクス
通常はkubectlなどでログを見るとか、外に出したログを1つずつ見ていくことになるが、AzureMonitor for Containersで見ると、ポータルである程度俯瞰的に見ることができる。
対応策
データセンター障害、大規模ネットワーク障害などで特定のリージョンにアクセスできなくなることを想定。
AzureFrontDoor
- トラフィック負荷分散
- CDN
- トラフィックの切り替え
- 地理的に近いリージョンに接続される
GCPのグローバルロードバランサとほぼ同様のもの。