Python AWS lambda在调用时不运行代码

Python AWS lambda在调用时不运行代码,python,amazon-web-services,aws-lambda,boto3,Python,Amazon Web Services,Aws Lambda,Boto3,我调用了一个lambda来停止使用python boto3 lambda invoke函数的一些实例。我使用一些有效负载调用函数。调用成功,但我在cloud watch中没有看到任何执行日志。基本上,代码执行似乎没有开始 代码: 输出: { u 'Payload': < botocore.response.StreamingBody object at 0x7fd8f9c31350 > , u 'ExecutedVersion': '$LATEST', 'ResponseMe

我调用了一个lambda来停止使用python boto3 lambda invoke函数的一些实例。我使用一些有效负载调用函数。调用成功,但我在cloud watch中没有看到任何执行日志。基本上,代码执行似乎没有开始

代码:

输出:

{
    u 'Payload': < botocore.response.StreamingBody object at 0x7fd8f9c31350 > , u 'ExecutedVersion': '$LATEST', 'ResponseMetadata': {
        'RetryAttempts': 0,
        'HTTPStatusCode': 200,
        'RequestId': 'efcaf7f4-5847-487f-921a-3e87657a7450',
        'HTTPHeaders': {
            'x-amzn-requestid': 'efcaf7f4-5847-487f-921a-3e87657a7450',
            'content-length': '2',
            'x-amz-executed-version': '$LATEST',
            'x-amzn-trace-id': 'root=1-5e9a06f7-3c4b263c83bb7989df2b596e;sampled=0',
            'x-amzn-remapped-content-length': '0',
            'connection': 'keep-alive',
            'date': 'Fri, 17 Apr 2020 19:43:55 GMT',
            'content-type': 'application/json'
        }
    }, u 'StatusCode': 200
}
{
u'Payload':,u'ExecutedVersion':'$LATEST','ResponseMetadata':{
“RetryAttempts”:0,
“HTTPStatusCode”:200,
“请求ID”:“efcaf7f4-5847-487f-921a-3e87657a7450”,
“HTTPHeaders”:{
“x-amzn-requestid”:“efcaf7f4-5847-487f-921a-3e87657a7450”,
“内容长度”:“2”,
“x-amz-executed-version':“$LATEST”,
'x-amzn-trace-id':'root=1-5e9a06f7-3c4b263c83bb7989df2b596e;sampled=0',
“x-amzn-remapped-content-length”:“0”,
“连接”:“保持活动状态”,
“日期”:“2020年4月17日星期五19:43:55 GMT”,
“内容类型”:“应用程序/json”
}
},u“状态代码”:200
}
我从cloud watch看到:


似乎函数已触发,但代码未执行。有人能帮我解决我缺少的问题吗?lambda的默认超时时间是3秒。鉴于您在CloudWatch中看到的
报告
行,我打赌您一定找到了这一点。当达到超时时,lambda执行立即停止,因此除了此
报告
行之外,您不会在日志中看到任何内容

您可以在管理控制台中更改函数的超时值


现在,这解释了为什么您在日志中看不到任何内容,但是您仍然需要调查为什么会发生此超时。很可能是由于网络配置问题或权限问题导致的某种网络超时。您的问题中没有足够的细节来帮助解决这个问题,但如果是网络问题,您可能需要将lambda与VPC关联起来。

您好,这很有趣。。。嗯,我想知道日志库是否能帮助您展示您的lambda处理程序<代码>停止\启动\服务器函数似乎不是您的处理程序。要启用Lambda函数向Amazon CloudWatch日志发送信息,应为与该函数关联的IAM角色提供
AWSLambdabasiceExecutionRole
策略。此策略包括写入CloudWatch日志的权限。请参阅:@Marcin我给出的代码正在我的本地执行,函数stop\u start\u server正在AWS中依次调用lambda函数。@JohnRotenstein lambda角色拥有AWS cloud watch的权限。否则,我们将无法从cloudwatch中查看触发器日志。嗨,Jules,创建函数时,lambda超时设置为200秒。没有权限问题,如果是权限问题,我至少应该在触发函数时获取日志或一些警告。我不确定网络方面的事情,我会更多地关注这个前景。谢谢你关注这个。问题是因为我给我的代码赋了一个错误的变量。我修复了我的代码,它现在正在工作。
{
    u 'Payload': < botocore.response.StreamingBody object at 0x7fd8f9c31350 > , u 'ExecutedVersion': '$LATEST', 'ResponseMetadata': {
        'RetryAttempts': 0,
        'HTTPStatusCode': 200,
        'RequestId': 'efcaf7f4-5847-487f-921a-3e87657a7450',
        'HTTPHeaders': {
            'x-amzn-requestid': 'efcaf7f4-5847-487f-921a-3e87657a7450',
            'content-length': '2',
            'x-amz-executed-version': '$LATEST',
            'x-amzn-trace-id': 'root=1-5e9a06f7-3c4b263c83bb7989df2b596e;sampled=0',
            'x-amzn-remapped-content-length': '0',
            'connection': 'keep-alive',
            'date': 'Fri, 17 Apr 2020 19:43:55 GMT',
            'content-type': 'application/json'
        }
    }, u 'StatusCode': 200
}