CloudWatch

【VPC外リージョンサービス】

CloudWatchは、AWSのモニタリングおよび Observability(可観測性)の基盤サービスです。

CloudWatch Metrics(メトリクス)CloudWatch Logs(ログ)、X-Ray 連携(トレース)、およびEventBridge(イベント)を統合的に扱うことで、システム全体の状態を可視化し、問題の早期発見や自動対応を実現ます。

CloudWatch Alarms(アラーム) によりしきい値を超えた際に通知や自動アクションを実行でき、CloudWatch Dashboards(ダッシュボード) でメトリクスやログを統合的に可視化することが可能です。

CloudWatch Synthetics(シンセティクス) CloudWatch RUM(Real User Monitoring) を用いてアプリケーションの可用性やユーザー体験を監視できます。CloudWatch Agent(エージェント) を活用すれば、OSレベルの Metrics や Custom Metrics の収集も容易です。

埋め込み指標により、ログデータを直接メトリクス化して効率的な分析が行えます。Log Retention(ログ保持)CloudWatch Logs Insights によるクエリ分析、フィルタ や サブスクリプション を通じて他の分析基盤と連携することもできます。

重要用語

関連サービス
X-Ray

ユースケース

インフラリソースの監視とアラートEC2やRDS、Lambdaなどのメトリクスを収集し、CPU使用率やエラーレートがしきい値を超えたときにメールやSNSで通知する仕組みを作る。
ログ収集と検索・可視化アプリケーションログやOSログをCloudWatch Logsに集約し、フィルタやメトリクス化を使って障害時の原因調査や傾向分析を行う。
ダッシュボードによるシステム状況の見える化複数のメトリクスやログを1つの画面にまとめたダッシュボードを作成し、運用チームが現在のシステム状態を一目で把握できるようにする。

ベストプラクティス

カスタムメトリクスの活用ビジネス指標やアプリ固有のメトリクスもCloudWatchに送信して監視する。
ダッシュボードの整備チームやシステムごとに見やすいダッシュボードを作成する。
アラームと自動アクションしきい値超過時に通知やAuto Scaling、SSM Run Commandをトリガーする。

高可用性・バックアップ・リトライ

高可用性・バックアップ・リトライ設計のポイント
【デフォルト】AWS内部で冗長化
 ・メトリクスデータ(Metrics)
 ・ログデータ(CloudWatch Logs)
 ・アラーム定義と状態(Alarms)
 ・ダッシュボード定義(Dashboards)
 ・CloudWatch Events / EventBridge統合
 ・Logs Insights クエリエンジン
 ・メトリクスストリーム(Metric Streams)
 ・サブスクリプションフィルター
 ・アノマリー検知(Anomaly Detection)
 ・Contributor Insights
 ・CloudWatch Synthetics(Canaries)
 ・ServiceLens / X-Ray統合
 ・メトリクスフィルター
 ・クロスアカウントクロスリージョン(CCCR)
 ・Application Insights
 ・Composite Alarms(複合アラーム)
【自動リトライ】デフォルト
 ログデータの取込・転送・メトリクス化する際、障害、遅延・内部エラーが発生すると自動リトライ

セキュリティ

関連サービス設定内容
KMS(データの暗号化と鍵の安全管理)【AWS管理キーによる暗号化を実施】
 独自KMSキー不要(鍵操作、監査ができない)
Secrets Manager(機密情報の安全管理)-
SSM Parameter Store(設定情報の一元管理)-
CloudTrail(操作履歴の記録・監査・追跡)【自動記録】
作成・更新・削除・設定変更は自動記録される。(コントロールプレーンAPI)
データ操作は追跡できない(データプレーンAPI)
Config(リソースの構成状態・設定変更を記録)【Configが有効な場合】
ロググループ/アラーム設定変更履歴・暗号化/保持期間/メトリクスフィルタ準拠評価
GuardDuty(脅威を自動検出)【GuardDutyが有効な場合】
ロググループ削除やメトリクス操作のAPI異常検知
Security Hub(セキュリティ情報の統合管理)-

リソースベースポリシーによる補完

実行ロールで不足する権限をCloudWatch のリソースベースポリシーで補うパターン
リソースベースポリシーのPrincipalリソースベースポリシーのAction
【VPC Flow Logs】
vpc-flow-logs.amazonaws.com
logs:CreateLogGroup
logs:CreateLogStream
logs:PutLogEvents
【Route 53】
route53.amazonaws.com
logs:CreateLogStream
logs:PutLogEvents
※)権限設計の原則

ログ・監視

標準メトリクス
メトリクス名説明
DeliveryErrors配信エラー数
ForwardedBytes転送バイト数
ForwardedLogEvents転送ログイベント数
IncomingBytesログ受信バイト数
IncomingLogEventsログイベント受信数

制限値(固定値/ハードリミット/ソフトリミット)

固定値制限値
メトリクスの保持期間15ヶ月
カスタムメトリクス数/リージョン無制限
GetMetricStatistics データポイント1,440

ハードリミット制限値
ウィジェット数/ダッシュボード500
Logs イベントサイズ256 KB

ソフトリミット制限値
アラーム数/リージョン5,000
ダッシュボード数/アカウント3,000
PutMetricData リクエスト150 TPS
Logs グループ数/リージョン1,000,000
Logs ストリーム数/ログループ1,000,000
Logs Insights クエリ数30(同時)

AWS CLIのサンプルコード

CloudFormationのサンプルコード

Terraformのサンプルコード

料金計算

課金項目説明
メトリクスカスタムメトリクスの数
API リクエストGetMetricStatisticsなどのAPIリクエスト
ダッシュボードカスタムダッシュボードの数
ログ取り込み取り込まれるログデータ量(GB)
ログ保存保存されるログデータ量
ログクエリLogs Insightsクエリのスキャン量
アラーム標準アラームと高解像度アラームの数
料金計算ツール

公式ページ

AWSドキュメント CloudWatch