2021/03/15

AWSログサービス活用入門|ログサービス活用パターンや活用するメリットを紹介!

 
  

AWSログサービス活用入門


皆さんはAWSのログサービスを利用したことがありますか。オンプレミス・クラウドに限らず、開発の過程・構築後のシステムを運用していく上で、ログの収集は欠かせません。

なぜなら、開発の過程でシステムが望む動作をしないとき、もしくは運用しているシステムで障害が発生したとき、原因を掴む手掛かりとして最初に確認するべき項目が、収集しているログであるためです。

もし利用者に影響の高い本番環境のシステムでログを収集していないと、障害発生時にその手掛かりを掴めず、原因の切り分けが遅れるもしくは不可能な状態となってしまいます。

そんなシステム開発・運用にとって欠かせないログサービスがAWSでも提供されているため、基本的なログの活用パターンとそれに適したAWSのログサービスについて紹介します。また、AWSのログサービスを利用するメリットや、活用事例についても紹介します。

ログの活用3パターン


ログ活用パターンはいくつかに分類できます。

代表例として3つのログ活用パターンとその詳細について紹介します。ログの活用方法について興味がある方は是非ご覧ください。

1. システムのメトリクス監視

1つ目のログ活用方法は、システムのメトリクス監視です。メトリクスとは、アプリケーション・OSなどから測定可能な変数のことです。

例えば、Webアプリケーションであればユーザーの接続時間・レスポンス時間・ページの中断数などがメトリクスの一例に当たります。OSであればCPU・メモリの使用率・ハードディスクの容量やアクセス頻度などがメトリクスに該当します。

メトリクスを監視することで、ユーザーアクセスによるレスポンスタイムが長すぎることや、CPU・メモリなどのリソースが不足していることを事前に察知でき、大きな問題の発生を予防するための対処が可能となります。

2. イベントの検出

2つ目のログ活用方法は、イベントの検出です。Windows OSではイベント検出のために「イベントログ」を収集する機能が既存で備わっており、コンピューターの中で発生した事象・操作を時系列で記録しています。

イベントログを収集することで、任意のイベントをトリガーとして設定し、次の処理を自動で実行できるようにアクションを定義できます。

3. ユーザー操作の確認

3つ目のログ活用方法は、ユーザー操作の確認です。システムの開発や本番運用フェーズでは、必ずシステムに対する操作が管理者・開発者・一般利用者などのユーザーにより行われます。

このようなユーザーによる操作履歴をログとして収集することで、システムに問題が発生したときに、ユーザーによる操作が起因となっているかなど、障害切り分けの手掛かりを増やせます。

AWSのログサービス

ここまではAWSのログの活用方法について紹介しましたが、AWSではログの活用パターンに応じて、適切なサービスが用意されています。

ここからは、AWSで提供されている基本的なログサービスについて紹介します。

Amazon CloudWatch

Amazon CloudWatchはフルマネージドの運用監視サービスで、AWSのサービスだけでなく、オンプレミスのサーバーに対してもサービスのモニタリングを行い、アラーム・ログ・イベントデータを収集します。

また、EC2インスタンスやオンプレミスのサーバーにおけるより詳細なメトリクスを収集するための機能「CloudWatchエージェント」が用意されています。

CloudWatchエージェントをEC2インスタンス・オンプレミスのサーバーにインストールすることで、より詳細なカスタムメトリクスを収集してAmazon CloudWatchで監視できます。

収集したデータをダッシュボードとして可視化する機能も備わっており、モニタリングの簡易化を実現しています。また、ログの活用方法に応じて異なる機能をAmazon CloudWatchは提供しています。

その機能については、次に紹介します。

Amazon CloudWatch Logs

Amazon CloudWatch Logsは、AWSの各サービスのログを自動で取得する機能です。

Amazon CloudWatch Logsを利用することで、AWSの各サービスにおいて、EC2やRDSであればインスタンスごと、Lambdaであれば関数ごとのロググループとして時系列でログを取得できます。

EC2インスタンスのモニタリングでは、ログのエラー率に対するしきい値を指定し、そのしきい値を超えたタイミングでユーザーに通知する設定も可能です。また、CloudWatch Logs insightsを使用することで、ログに対するクエリ・分析をかけることも可能です。

CloudWatch Events

Amazon CloudWatch Eventsは、AWSの各サービスで発生するイベントに対してルールを設定し、一致したイベントが発生した際のトリガーを定義できる機能です。

Amazon CloudWatch Eventsのナビゲーションペインからルールを作成でき、例えばEC2の特定のインスタンスが起動したときや、終了したときに実行するターゲットを選択できます。

ターゲットとして実行する関数をAWS Lambdaで予め定義している場合は、その関数をターゲットとして選択することで、設定したEC2インスタンスのイベント発生時に呼び出せます。

AWS CloudTrail

AWS CloudTrailは、AWSユーザーのアクティビティをログとして記録・保存するサービスです。ログ活用のパターンの中で、ユーザー操作の確認を実施するのに適したサービスです。

手動での設定をすることなく、過去90日間に実施した利用者の操作を表示・ダウンロードできます。また、利用者の操作だけではなく、Lambda関数の実行・S3バケットへの操作といったAPIコールの情報も記録されます。

AWSのログサービスを利用するメリット


ここまででAWSのログサービスについて説明しました。

ここからはAWSのログサービスを利用するメリットを、大きく4つに分けて紹介します。AWSのログサービスの活用を考えている方は是非ご覧ください。

1. ログ収集のためのサーバー構築が不要

1つ目のメリットは、ログ収集のためのサーバー構築が不要であることです。

オンプレミスでは、ログ収集のためのサーバーを構築し、ZABBIXなどの監視アプリケーションを導入し、サーバー・機器ごとにログ収集サーバーへのログ転送設定などを実施する必要がありました。

一方で、AWSでログ収集サービスとして提供されているAmazon CloudWatchやAWS CloudTrailはフルマネージドサービスであるため、サーバーの構築・管理が必要ありません。

2. AWSサービスとの連携が容易

2つ目のメリットは、AWSサービスとの連携が容易であることです。

AWSの各サービスでインスタンスや関数などを構築する際、Amazon CloudWatchへのエクスポートを選択ができたり、自動でロググループが作成されたりするため、煩雑な操作や構築作業を実施することなく他のAWSサービスとの連携が可能です。

また、AWS CloudTrailは手動設定が必要ないため、AWSの操作・各サービスでのAPIコールが実施されるたびに自動でログが蓄積されます。

3. 可視性が高い

3つ目のメリットは、収集したログの可視性が高いことです。

Amazon CloudWatchではモニタリングのためのダッシュボード機能が提供されており、EC2・RDSインスタンスのCPU・メモリ利用率や、AWS Lambdaの処理時間やエラー数にいたるまで、メトリクスから自動でグラフ化されます。

また、ダッシュボードに表示されるグラフは、特定のリソースグループに限定したり、同一のタグでグルーピングしたりできます。

4. 低コストでログの収集と活用が実現できる

4つ目のメリットは、低コストでログの収集と活用が実現できることです。

Amazon CloudWatchには無料利用枠が設けられており、メトリクスにおいては5分間隔の基本モニタリング、1分間隔の詳細モニタリング(10個)、100万のAPIリクエストが無料で利用できます。

有料枠においても、最初の1万メトリクスで0.30USD(メトリクス/月)となるため、価格・管理コストの両面でメリットがあります。

AWS CloudTrailにおいても、AWSのすべてのサービスに対する過去90日間のログ収集が無料で利用できます。

AWSのログサービス活用事例


一例として、Amazon CloudWatchの活用事例を紹介します。

総合ファッションECサイト「マガシーク株式会社」では、Amazon EC2で構築したECサイト・業務系サーバー・APIサーバーに加え、データベースサービスのAmazon AuroraからAmazon CloudWatchを用いてログを収集し、ストレージサービスのAmazon S3へ格納しています。

まとめ

AWSの代表的なログ収集サービスであるAmazon CloudWatchとAWS CloudTrailについて紹介しました。

サーバー構築過程や稼働後の運用フェーズで役に立つログ収集を、低コストかつ簡単に実現できるため、積極的に活用していきましょう。

ITエンジニアへのキャリアチェンジならキャリアチェンジアカデミー

この記事の監修者・著者

株式会社オープンアップITエンジニア
株式会社オープンアップITエンジニア
未経験からITエンジニアへのキャリアチェンジを支援するサイト「キャリアチェンジアカデミー」を運営。これまで4500人以上のITエンジニアを未経験から育成・排出してきました。
・AWS、salesforce、LPICの合計認定資格取得件数:2100以上(2023年6月時点)
・AWS Japan Certification Award 2020 ライジングスター of the Year 受賞

おすすめの動画

  • 【未経験からIT業界へ転職するなら】相談窓口とスキルの獲得はここで解決!IT転職が一気に有利に!【キャリアチェンジアカデミー】

  • 【費用一切不要】未経験からIT業界へ転職するならまずはここへ相談!【キャリアチェンジアカデミー】

  • 【何のエンジニアになれるのか?】未経験からITエンジニアを目指すとこんな道がある【キャリアチェンジアカデミー】