如何通过 SAM 查看 Lambda 本地调用的完整日志?

Ita*_*vka 6 amazon-web-services node.js aws-lambda aws-sam-cli aws-sam

我正在使用默认的 HelloWorld 示例 我的代码是:

let response;
exports.lambdaHandler = async (event, context) => {
    console.log(event);
    try {
        response = {
            'statusCode': 200,
            'body': JSON.stringify({
                message: 'hello world'
            })
        }
    } catch (err) {
        console.log(err);
        return err;
    }

    return response
};
Run Code Online (Sandbox Code Playgroud)

一切都按预期进行。sam local start-api我用or开始sam local start-api --debug

我的问题是,我在哪里可以看到当前console.log(event);
我只能看到{.
如果在那里放一个字符串,比如“AAAAAAA”,我会在我输入的终端中看到它sam local start-api(如预期)。

我缺少什么才能看到完整的本地日志?

pet*_*tey 8

在您的代码中,放入JSON.stringify将对象转换为来自日志记录的字符串,

console.log(JSON.stringify(event));

然后您可以通过以下方式在终端/命令提示符中查看日志记录

sam local start-api

或者让它记录到一个文件中:

sam local start-api --log-file logfile.txt