38

当你做一个

console.log('Loading function');

在亚马逊 lambda 函数中,它去哪里了?

我的设置 api 网关 lambda 函数 nodejs6.10 curl https://n2tredacted.execute-api.us-east-1.amazonaws.com/prod/redactedFunc

4

4 回答 4

34

AWS Lambda 日志被写入CloudWatch Logs。以下是访问它们的方法

  1. 在 AWS 控制台中选择您的 Lambda 函数
  2. 单击监控选项卡
  3. 选择在 CloudWatch 中查看日志

如果您更喜欢在 AWS 控制台之外检索 CloudWatch Logs,则有许多 CLI 选项:

于 2017-12-16T15:13:21.933 回答
10

有 2 种方法可以访问 Lambda 函数的日志。

方法一(使用 Serverless CLI):

导航到项目文件夹的根目录并在命令行中输入:

sls logs -f myFunctionName -t

-f用于指定函数名称,-t用于在命令行中实时跟踪日志。

方法 2(使用 CloudWatch Logs):

转到部署您的函数的区域中的 CloudWatch,然后转到日志。你会在那里找到你的函数的日志。

于 2018-07-17T04:55:48.993 回答
4

在控制台 Cloudwatch > Logs 或使用 awscli:

aws logs get-log-events  --log-group-name /aws/lambda/my_group_name_here --log-stream-name stream_name_here

一些特殊字符如 $ 需要用前面的 \ 进行转义

于 2018-10-18T21:19:08.567 回答
0

如果您使用 API Gateway 进行测试,console.log 将不会在 API 测试的测试中打印。但不要混淆它可以正常工作并在云手表中打印日志。

只需转到 lambda 的监视选项卡,您就会找到您的日志。

于 2019-10-22T03:05:05.447 回答