0

我使用 claudia.js 创建了一个带有 API-Gateway 的 lambda 函数。现在我需要日志。Cloudwatch 有效,它向我显示带有完整堆栈信息的代码错误。但是当我使用 console.log() 时,我没有任何条目。

'use strict'
const awsServerlessExpress = require('aws-serverless-express')
const app = require('./app')
const server = awsServerlessExpress.createServer(app)

exports.handler = (event, context) => {
    console.log(4, "Hello World!")
    awsServerlessExpress.proxy(server, event, context)
}

-> cloudwatch 中没有输出。

'

use strict'
const awsServerlessExpress = require('aws-serverless-express')
const app = require('./app')
const server = awsServerlessExpress.createServer(app)

exports.handler = (event, context) => {
    conesole.log("Hello World!")
    awsServerlessExpress.proxy(server, event, context)
}

cloudwatch 中的输出:

ReferenceError:conesole 未在 exports.handler (/var/task/lambda.js:7:2) 中定义

为什么没有显示 console.logs?

4

1 回答 1

0

首先,请检查您的 Lambda 函数是否有权将日志写入 CloudWatch,否则请附加正确的策略,该策略授予将日志写入云手表的权限。请在下面找到一个具有写入日志权限的示例策略,

{
"Sid" : "YOURSID",
"Effect": "Allow",
"Action": [
"logs:*"
],
"Resource": [
"arn:aws:logs:::*"
]
} 

请参考http://docs.aws.amazon.com/lambda/latest/dg/console-specific-permissions.html#console-permissions-cloudwatch-logs

于 2017-10-31T15:41:59.007 回答