我想在本地调试用C ++编写的AWS Lambda函数。理想情况下,我希望能够逐步执行我的代码(就像您使用GDB或任何不错的IDE一样)。使用AWS Lambda做到这一点的方法通常包括AWS SAM。
想法1,使用SAM调试:
不幸的是,SAM无法使您调试提供的运行时,因为它“仅”支持Node.js,Python和Go(compare documentation)。
问题1:
是否可以通过某种方式将GDB附加到我编译的lambda函数上?
想法2,使用docker-lambda运行:
您也可以使用lambci/docker-lambda启动功能。如果要获取一些调试输出,可以执行strace docker run --rm -v my/build/dir:/var/task lambci/lambda:provided handler '{"some": "event"}'
。这可行,但并不是我想要的调试质量。
问题2:
我可以以某种方式将a附加到在docker-lambda
中运行的lambda函数吗?
想法3:远程:
绝望地去为所能得到的一切努力(这不是我想要的)。
问题3:
如果真的无法在本地执行此操作,我应该如何在AWS上执行此操作?