2016-09-29 187 views
0

我写了一个独立于AWS Lambda的Python脚本(upload.py)。它将数据作为POST上传到API。它具有以下方法来处理LAMBDA执行:AWS Lambda:执行失败,没有错误

def handler(event, context): 
    print("Hello!") 
    start() 

当我打电话start()我的本地计算机上,脚本运行成功。

当我将代码上传到Lambda并运行测试或启动触发器时,没有任何反应。以下被打印出来:

START RequestId: 6abc0995-865c-11e6-b015-57198f9121b5 Version: $LATEST 
END RequestId: 6abc0995-865c-11e6-b015-57198f9121b5 
REPORT RequestId: 6abc0995-865c-11e6-b015-57198f9121b5 Duration: 2056.85 ms Billed Duration: 2100 ms 

然而,当我引入误差的代码(例如添加的字符串和整数),错误被打印出来。

设置中的所有内容都已正确定义(例如upload.handler),并且未分配VPC以消除网络问题。执行角色具有管理员权限,可以将其作为一种可能性消除。

回答

1

所以事实证明,“sys”库在Lambda中是不允许的,这在后见之明是有道理的。为了应对潜在的编码问题,我有以下代码:

import sys 
reload(sys) 
sys.setdefaultencoding('utf-8') 

作为另一堆栈溢出线程建议。这显然是阻止执行。删除允许脚本正确执行。

相关问题