AWS-Lambda函数的当前日期/时间问题

时间:2017-08-09 15:03:00

标签: python aws-lambda

我正在使用python for lambda函数,它工作正常。 lambda函数返回的日期和时间存在一个小问题。它显示不同的日期/时间,我认为它显示UTC时区。显示的时间比原始时间提前4小时

目前,我已连接到us-east-1地区,并希望根据我的地区获得结果。

到目前为止,我尝试过lambda函数:

import time
time.ctime() 

from datetime import datetime
datetime.now().strf("%m-%d-%Y %H:%M:%S") 

file_name = 'VDI_Health_Status_Report-%s.csv' % time.ctime()
print(file_name)

在当地,他们工作正常,但有lambda功能,我没有得到理想的结果。我也遇到了#34; pytz" python中的模块可能是解决方案,但不确定lambda函数是否可以访问它,因为我必须在本地安装模块。任何方式围绕这个或任何建议?感谢

enter image description here

1 个答案:

答案 0 :(得分:2)

是的,AWS Lambda将GMT用作其所有服务器的本地时间。我自己才发现的。要准确获取本地时间(包括夏令时问题),请安装pytz库并将其转换。 pytz库默认未安装在AWS Lambda上,您需要将其作为压缩包的一部分上载。

然后参见How to convert GMT time to EST time using python了解如何进行。例如:

eastern_time = datetime.now(timezone('US/Eastern'))

有关如何通过Lambda应用安装pytz的信息,请参见Import pytz into AWS lambda function