AWS Lambdaでログを確認する方法を完全解説!CloudWatch Logsで初心者でも安心運用
生徒
「AWS Lambdaを使い始めたんですが、処理がちゃんと動いているか不安です。確認する方法はありますか?」
先生
「AWS Lambdaでは、CloudWatch Logsを使って実行結果やエラー内容を簡単に確認できます。」
生徒
「CloudWatch Logsって何をしてくれるんですか?」
先生
「では、AWS LambdaとCloudWatch Logsの関係から順番に見ていきましょう。」
1. AWS Lambdaとは?
AWS Lambda(エーダブリューエス ラムダ)は、サーバーを用意しなくてもプログラムを実行できるAWSのサービスです。プログラムの実行時間や回数に応じて料金が決まるため、無駄なコストが発生しにくいのが特徴です。
Webサービスの裏側処理や、ファイルがアップロードされたときの自動処理など、さまざまな場面で利用されています。
2. CloudWatch Logsとは?
CloudWatch Logs(クラウドウォッチ ログ)は、AWS上で動くサービスの動作記録を保存・確認できる仕組みです。AWS Lambdaが実行されたときの処理内容や、エラーが起きた場合の詳細が自動的に記録されます。
ログは「動作の足跡」のようなもので、問題が起きた原因を探るときにとても重要です。
3. AWS LambdaとCloudWatch Logsの関係
AWS Lambdaは、実行されるたびに標準出力の内容をCloudWatch Logsへ送信します。特別な設定をしなくても、Lambda関数を作成した時点で自動的に連携されます。
そのため、プログラムの途中経過を確認したり、エラー内容を調べたりすることが簡単にできます。
4. Lambda関数のログ出力の基本
Lambda関数では、プログラム内で文字を出力するだけでログとして記録されます。Pythonの場合はprintを使います。
def lambda_handler(event, context):
print("Lambdaが実行されました")
return "完了"
このprintの内容が、そのままCloudWatch Logsに表示されます。初心者の方は、まず処理の流れを確認するためにログを多めに出すのがおすすめです。
5. CloudWatch Logsでログを確認する手順
AWSマネジメントコンソールからCloudWatchを開き、「ロググループ」を選択します。AWS Lambdaごとに専用のロググループが自動作成されています。
ロググループの中には「ログストリーム」があり、実行ごとの詳細な記録を時系列で確認できます。
6. エラーログの見方とポイント
Lambdaでエラーが発生すると、CloudWatch Logsにはエラーメッセージと発生箇所が表示されます。赤文字の部分が目印です。
どの行で失敗したのか、どんな理由なのかが書かれているため、落ち着いて読むことで原因を特定できます。
7. ログを活用したトラブル対策
ログは「問題が起きたあと」だけでなく、「問題を防ぐ」ためにも役立ちます。処理の開始や終了をログに残すことで、想定外の動きを早めに見つけられます。
AWS LambdaとCloudWatch Logsを組み合わせることで、安定したシステム運用が可能になります。
8. 初心者がつまずきやすい注意点
ログが表示されない場合、多くは実行されていないか、権限設定が不足しています。IAMロールにCloudWatch Logsへの書き込み権限があるか確認しましょう。
基本的にはAWSが自動設定してくれるため、慣れるまでは設定を変更しないのが安心です。