Amazon CloudWatch のアイコン

Amazon CloudWatch

AWS リソースとアプリケーションの監視・ログ管理・アラート通知を行うサービス

何ができるか

Amazon CloudWatch は、AWS リソースやアプリケーションのメトリクス (数値データ)、ログ、イベントを収集・監視し、異常を検知した際にアラートを送信するモニタリングサービスです。EC2 の CPU 使用率、Lambda の実行回数、RDS のデータベース接続数など、AWS サービスのメトリクスが自動的に収集されます。ダッシュボードでリアルタイムに状況を可視化し、閾値を超えた場合に自動的にアクションを実行できます。

どのような場面で使うか

サーバーやデータベースの性能監視、アプリケーションログの集約と分析、異常検知時のメール通知や自動復旧、Auto Scaling のトリガー条件設定、コスト異常の検知、カスタムメトリクスによるビジネス指標の監視など、システム運用のあらゆる監視場面で利用されています。 この分野について体系的に学びたい方は、関連書籍 (Amazon) も参考になります。

身近な例え

車のダッシュボードに例えるとわかりやすいでしょう。速度計、燃料計、エンジン回転数 (メトリクス) がリアルタイムに表示され、エンジンの温度が上がりすぎると警告灯 (アラーム) が点灯します。ドライブレコーダー (ログ) で走行記録も残せます。CloudWatch は AWS 環境全体のダッシュボードです。

CloudWatch とは

Amazon CloudWatch は、AWS が提供する統合モニタリングサービスです。AWS のほぼすべてのサービスが CloudWatch にメトリクスを自動送信しており、追加設定なしで基本的な監視を始められます。メトリクスの収集、ログの管理、アラームの設定、ダッシュボードの作成という 4 つの主要機能を通じて、システムの健全性を包括的に把握できます。

メトリクスとアラーム

メトリクスは時系列の数値データで、EC2 の CPU 使用率、S3 のリクエスト数、Lambda の実行時間などが自動的に記録されます。アラームはメトリクスに閾値を設定し、条件を満たした場合にアクションを実行する仕組みです。たとえば、CPU 使用率が 80% を超えたら SNS でメール通知を送る、Auto Scaling でインスタンスを追加するといった自動対応が可能です。

CloudWatch Logs

CloudWatch Logs は、アプリケーションログ、OS ログ、AWS サービスのログを一元的に収集・保存・検索するサービスです。EC2 インスタンスに CloudWatch エージェントをインストールすれば、アプリケーションのログファイルを自動的に CloudWatch に送信できます。Lambda 関数のログは自動的に CloudWatch Logs に出力されます。ログデータに対してフィルターパターンを設定し、特定のエラーメッセージが出現した際にアラームを発報することも可能です。

はじめかた

CloudWatch は AWS アカウントを作成した時点で自動的に利用可能です。CloudWatch コンソールを開くと、既に稼働中の AWS リソースのメトリクスが表示されています。アラームを作成するには、監視したいメトリクスを選択し、閾値と通知先を設定するだけです。ダッシュボードを作成すれば、重要なメトリクスを 1 つの画面にまとめて表示できます。

注意点

  • 基本メトリクスは無料だが、詳細モニタリング (1 分間隔) やカスタムメトリクスは追加料金が発生する
  • ログの保存期間はデフォルトで無期限のため、不要なログが蓄積するとストレージコストが増加する。保持期間を適切に設定すること
  • アラームの閾値設定が厳しすぎると誤報が頻発し、緩すぎると異常を見逃すため、適切な閾値を見極めること

さらに詳しく知りたい方は、関連書籍 (Amazon) で理解を深められます。