BOS‐10 AWS ではじめるオブザーバビリティ ‐ システムのどこで・何が・なぜ 起こってるのかを理解する - novel-suzukikeisuke/study GitHub Wiki
オブザーバビリティとは
オブザーバビリティ(可観測性)
- システムのどこで・何が・なぜ起こっているのかといった動作確認状況を把握できている状態
オブザーバビリティはなぜ必要か
- 予測可能な範囲はモニタリングで対応できるが未知の事象や早い変化への対応にはオブザーバビリティが求められる
オブザーバビリティで得られるメリット
- システムのどこで・何が・なぜ起こっているのかといった動作状況把握できている状態
オブザーバビリティを実現するには
オブザーバビリティの実現に向けて
- マイクロサービスなどの複雑なシステムを観測可能にするには?
- 観測可能なシステムは、次のイベントを発するべきである
- メトリクス、ログ、トレース
- メトリクス : 時間間隔で計測されたデータの数値表現
- ログ : タイムスタンプが記録された、時間の経過とともに起こったイベントの記録
- トレース : エンドツーエンドのリクエストフローの記録
- 「トレース」によりリクエストからレスポンスまでの全体の流れを追跡、把握
- 障害箇所の特定やパフォーマンス分析につながる情報を確認
- 全てのコンポーネントは計測されている必要がある
- AWS ネイティブサービスの活用
- マネージドオープンソースサービスの活用
- インフラストラクチャだけでなく、 アプリケーション、ユーザー体験も計測する
全てのコンポーネントを計測する
- サービス状態や実際の利用状況をモニタリングする
- 障害の把握や性能改善、機能改善につながる洞察を得る計測対象
ユーザー体験を計測する
- エンドユーザーにとって「良い体験」とは何かを確立することから始める
AWSではじめるオブザーバビリティ
Amazon CloudWatch
- モニタリング・オブザーバビリティに関する様々な機能を提供
CloudWatch Metrics
- さまざまな AWS サービスからメトリクスを自動的に収集することが可能
CloudWatch Logs
- AWS サービスおよびアプリケーションログの監視、保存、アクセスを提供
AWS X-Ray
- アプリケーションやその基盤となるサービスの実行状況を把握しパフォーマンスの問題やエラーの根本原因を特定
その他 CloudWatch サービス
- CloudWatch Synthetics
- 一定間隔で計測プログラムがアプリケーションにアクセス、パフォーマンスを測定する手法
- CloudWatch RUM(Real User Monitoring)
デモ動画視聴