

# Lambda 関数ログを CloudWatch Logs に送信する
<a name="monitoring-cloudwatchlogs"></a>

関数の実行ロールが必要なアクセス許可を持っていることを前提として、デフォルトでは Lambda はすべての関数呼び出しについてログを自動的にキャプチャし、CloudWatch Logs に送信します。デフォルトで、これらのログは「/aws/lambda/{{<function-name>}}」という名前のロググループに保存されます。デバッグ強化のため、ユーザーはコードにカスタムログ記録ステートメントを挿入することができ、Lambda はこのコードを CloudWatch Logs にシームレスに統合させます。必要に応じて、Lambda コンソール、AWS CLI、あるいは Lambda API を使用してログを別のグループに送信するように関数を設定することができます。詳細については、「[CloudWatch ロググループの設定](monitoring-cloudwatchlogs-loggroups.md)」を参照してください。

Lambda 関数のログは、Lambda コンソール、CloudWatch コンソール、AWS Command Line Interface(AWS CLI)、または CloudWatch API を使って表示することができます。詳細については、「[Lambda 関数の CloudWatch Logs を表示する](monitoring-cloudwatchlogs-view.md)」を参照してください。

**注記**  
関数の呼び出し後にログが表示されるまで、5～10 分かかることがあります。

## 必要な IAM 許可
<a name="monitoring-cloudwatchlogs-prereqs"></a>

ログを CloudWatch Logs にアップロードするには、[実行ロール](lambda-intro-execution-role.md)には次のアクセス許可が必要です。
+ `logs:CreateLogGroup`
+ `logs:CreateLogStream`
+ `logs:PutLogEvents`

詳細については、「Amazon CloudWatch ユーザーガイド」の「[Using identity-based policies (IAM policies) for CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/iam-identity-based-access-control-cwl.html)」を参照してください。

これらの CloudWatch Logs のアクセス許可は、Lambda が付与する `AWSLambdaBasicExecutionRole`AWS 管理ポリシーを使って追加します。このポリシーをロールに割り当てるには、次のコマンドを実行します。

```
aws iam attach-role-policy --role-name {{your-role}} --policy-arn arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole
```

詳細については、「[実行ロールでの AWS マネージドポリシーの使用](permissions-managed-policies.md)」を参照してください。

## 料金
<a name="monitoring-cloudwatchlogs-pricing"></a>

Lambda ログの使用には追加料金は発生しませんが、標準の CloudWatch Logs 料金が適用されます。詳細については、「[CloudWatch 料金表](https://aws.amazon.com/cloudwatch/pricing/)」を参照してください。