是否可以查看AWS Lambda Layer的运行日志?如何获取?
解决Datadog Python Lambda Layer日志不输出问题
以下是可直接落地的排查和解决步骤:
- 首先确认Lambda执行角色的CloudWatch日志权限是否完整,必须包含以下三个权限:
logs:CreateLogGroup、logs:CreateLogStream、logs:PutLogEvents
缺权的话所有日志(包括Layer产生的日志)都无法上报到CloudWatch。 - 调整Datadog Layer的日志输出级别,在Lambda函数的环境变量中新增两个配置:
DD_LOG_LEVEL:值设为debug,强制输出所有调试级别的日志DD_FLUSH_TO_LOG:值设为true,确保Datadog内部运行日志全部写入CloudWatch流
- 排查Python日志模块的全局级别限制,如果你的函数代码中自行配置过root logger的级别为WARNING或更高,会默认屏蔽Layer中低级别日志。可在函数入口代码中单独拉高Datadog模块的日志级别:
import logging logging.getLogger("datadog_lambda").setLevel(logging.DEBUG) - 避免日志查看时的漏判:Lambda控制台默认只展示最新的日志流,你可以直接进入对应CloudWatch日志组,用Logs Insights搜索
datadog关键字或源码中对应的日志内容,全量匹配所有历史调用的日志。
内容的提问来源于stack exchange,提问作者irregular
相关产品推荐
相关产品推荐

