Azure Function中Python代码当前日期无法每日更新的问题排查
Azure Function Python 获取日期仅在部署时更新的问题解决
问题原因
你把today = date.today()写在了函数外部的模块顶层,而Azure Functions的Python运行时采用实例复用机制(热启动):
- 函数部署或首次冷启动时,模块级代码会执行一次,给
today赋值部署时的日期 - 后续每日触发函数时,系统会复用已初始化的实例,不会重新执行模块顶层的代码,导致
today的值一直停留在部署当天
本地运行正常是因为每次启动都是全新实例,模块代码会重新执行,自然能获取到当前日期。
解决办法
将获取日期的代码移到函数内部,确保每次函数触发时都重新计算当前日期:
from datetime import date, timedelta, datetime import azure.functions as func def main(timer: func.TimerRequest) -> None: # 每次触发函数时重新获取当前日期 today = date.today() # 这里写你的后续业务逻辑
内容的提问来源于stack exchange,提问作者Rox
相关产品推荐
相关产品推荐

