amazon-web-services - aws lambda:如何从真实请求(非测试)中获取 console.log 日志?
问题描述
我已阅读此文档:https ://docs.aws.amazon.com/en_us/lambda/latest/dg/nodejs-prog-model-logging.html并制作了这个 lambda:
exports.handler = async (event) => {
// TODO implement
// const response = {
// statusCode: 200,
// body: JSON.stringify('Hello from Lambda!'),
// };
console.log(123321);
console.log(event.Records[0].cf.response);
console.log(event.Records[0].cf.request);
console.log(JSON.stringify(event.Records[0].cf));
console.log(event);
console.log(arguments);
//Get contents of response
const response = event.Records[0].cf.response;
//Return modified response
return response;
};
当我将“测试”与假模型一起使用时,它可以工作(日志发送到 CloudWatch),但是当我添加 CloudFront 触发器并发送请求时,日志不会发送到任何 CloudWatch。
- 如何
event
从 lambda 获取真实(来自生产)对象 - 如何从 CloudFront 触发的 lambda 发送/获取日志?
解决方案
由于 Lambda 是由 CloudFront 触发的,它现在变成了 Lambda@Edge,因此 CloudWatch 日志流创建在调用 Lambda 实例的区域(由 CloudFront 决定)。
因此,按照AWS Lambda@Edge Docs for Troubleshooting,可以使用提供的 shell 脚本轻松确定特定区域。
推荐阅读
- python - 如何在 Python 中格式化九位数字的字符串?
- react-native - 在屏幕之间共享视频组件
- python - 计算字典内嵌套列表中的值数
- go - golang中的Catch-All URL
- arrays - 数组和删除地址(在 :) IOS
- firebase - GDPR:Firebase 和 Admob
- html - 更改焦点上 textinput 的填充/边距会导致 parentdiv 流出?
- entity-framework - “更新条目时发生错误。有关详细信息,请参阅内部异常。” - 无法查看“内部异常”
- django - 从 django admin 导出到 csv 文件时,如何包含来自反向 FK 的最新条目?
- java - JDBC Prepared Statement 对会话范围感到困惑