You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Functions Python定时器触发夏令时适配问题求助

Azure Functions Python定时器触发器时区适配解决方案

针对你遇到的英国时区夏令时切换问题,可通过以下步骤实现自动适配,无需手动修改设置:

  • 确保时区配置生效
    在Azure门户的函数应用配置中添加WEBSITE_TIME_ZONE设置,值为Europe/London,添加完成后必须重启函数应用,否则配置不会加载。

  • 在触发器绑定中指定时区
    修改函数的function.json文件,在timerTrigger绑定里添加timeZone字段,明确指定时区:

    {
      "scriptFile": "__init__.py",
      "bindings": [
        {
          "name": "mytimer",
          "type": "timerTrigger",
          "direction": "in",
          "schedule": "0 0 3 * * *",
          "timeZone": "Europe/London"
        }
      ]
    }
    

    Europe/London时区会自动识别夏令时(UTC+1)和冬令时(UTC)的切换,确保触发器始终在英国当地时间凌晨3点触发。

  • 验证时区配置
    可在函数代码中添加日志输出,确认触发时间是否符合预期:

    import datetime
    import logging
    import pytz
    import azure.functions as func
    
    def main(mytimer: func.TimerRequest) -> None:
        utc_now = datetime.datetime.utcnow().replace(tzinfo=datetime.timezone.utc)
        london_tz = pytz.timezone('Europe/London')
        london_now = utc_now.astimezone(london_tz)
        
        logging.info(f"UTC时间: {utc_now.isoformat()}")
        logging.info(f"英国当地时间: {london_now.isoformat()}")
    

    注意:使用pytz需要在requirements.txt中添加pytz依赖。

通过以上配置,定时器会自动适配英国时区的夏令时切换,无需在时钟变更时手动调整设置。

内容的提问来源于stack exchange,提问作者Man_Like_Dave

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 23:43:14