使用 Amazon CloudWatch Logs 与 AWS Lambda - AWS Lambda

使用 Amazon CloudWatch Logs 与 AWS Lambda

AWS Lambda 将代表您自动监控 Lambda 函数以帮助您解决函数故障。只要您的函数的执行角色具有必要的权限,Lambda 就会捕获您的函数处理的所有请求的日志,并将其发送到 Amazon CloudWatch Logs。

您可以将录入语句插入到您的代码中,以帮助您验证代码是否按预期工作。Lambda 自动与 CloudWatch Logs 集成,并将您的代码的所有日志发送到与 Lambda 函数关联的 CloudWatch Logs 组。

默认情况下,Lambda 向名为 /aws/lambda/<function name> 的日志组发送日志。如果您希望函数向另一个群组发送日志,则可以使用 Lambda 控制台、AWS Command Line Interface(AWS CLI)或 Lambda API 进行配置。请参阅配置 CloudWatch 日志组,了解更多信息。

您可以借助 Lambda 控制台、CloudWatch 控制台、AWS Command Line Interface (AWS CLI) 或 CloudWatch API 查看 Lambda 函数的日志。

注意

函数调用后,日志可能需要 5 到 10 分钟才能显示。

所需的 IAM 权限

执行角色必须具备以下权限,才能将日志上传 CloudWatch Logs:

  • logs:CreateLogGroup

  • logs:CreateLogStream

  • logs:PutLogEvents

要了解更多信息,请参阅《Amazon CloudWatch User Guide》中的 Using identity-based policies (IAM policies) for CloudWatch Logs

您可以使用 Lambda 提供的 AWSLambdaBasicExecutionRole AWS 托管式策略添加这些 CloudWatch Logs 权限。要将此策略添加到您的角色,请运行以下命令:

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

有关更多信息,请参阅 在执行角色中使用 AWS 托管策略

定价

使用 Lambda 日志没有额外的费用;不过,会收取标准 CloudWatch Logs 费用。有关更多信息,请参阅 CloudWatch 定价