相关疑难解决方法(0)

AWS Lambda@Edge 不记录

我已将查看器请求和源响应 Lambda 函数部署到 CloudFront 分配,这些函数正在触发,但未记录到 CloudWatch。我花了大量时间研究这个主题,并浏览了其他帖子的所有建议,包括:

  • 检查所有区域的日志,因为我知道它们 CloudWatch 日志将在 labmda@edge 函数运行的区域中创建。没有登录任何一个。
  • 我已检查 AWSServiceRoleForCloudFrontLogger 角色是否存在。

有趣的是,当我故意将错误编码到一个 Lambda 函数中时,我确实在一个名为/aws/cloudfront/LambdaEdge/<cloudfront distribution id>包含错误日志的组中创建了日志,但是这里的 console.log 语句没有输出。

在我的一生中,我无法弄清楚如何将所有请求(成功和失败)记录到 CloudWatch,其中包含使用 console.log() 的调试语句。

AWSServiceRoleForCloudFrontLogger 包含一个策略AWSCloudFrontLogger

    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "logs:CreateLogGroup",
                "logs:CreateLogStream",
                "logs:PutLogEvents"
            ],
            "Resource": "arn:aws:logs:*:*:/aws/cloudfront/*"
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

编辑:

以下是 AWS 支持建议的 AWS 角色。我可以确认这有效并解决了问题。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "logs:CreateLogGroup",
                "logs:CreateLogStream",
                "logs:PutLogEvents"
            ],
            "Resource": [
                "arn:aws:logs:*:*:*"
            ]
        }
    ]
}```
Run Code Online (Sandbox Code Playgroud)

amazon-web-services amazon-cloudfront aws-lambda aws-lambda-edge

15
推荐指数
1
解决办法
1819
查看次数

aws lambda不记录打印语句

我有一个 lambda_handler 函数,例如:

def lambda_handler(event, context):
   print('test')
Run Code Online (Sandbox Code Playgroud)

我可以看到日志输出很好地传递到 CloudWatch。我可以看到开始、结束、语法错误等,所以我不认为这是权限问题,但我在任何地方都看不到我的打印语句。我的 IAM 角色允许执行以下操作:

允许:日志:CreateLogGroup

允许:日志:CreateLogStream

允许:日志:PutLogEvents

python aws-lambda

12
推荐指数
1
解决办法
9324
查看次数

Amazon Lambda不显示python日志

我的API(Python)部署在Amazon Lambda上。问题是当我请求我的API时,我收到内部服务器错误。我可以尾随Lambda日志,但看不到代码崩溃的实际错误或堆栈跟踪。当我拖尾日志时,我只会得到以下输出。

START RequestId: 62341bgd-6231-11e8-8c5b-25793532a32u Version: $LATEST
END RequestId: 62341b0d-6231-1128-8r5b-2b793032a3ed
REPORT RequestId: 6234te0b-6rte-aaa8-au5a-21t93132r3rt  Duration: 0.46 ms
Run Code Online (Sandbox Code Playgroud)

如何查看用于调试的python api的实际堆栈跟踪?

python amazon-web-services aws-lambda serverless aws-serverless

5
推荐指数
1
解决办法
1530
查看次数