问题描述
在Azure的 App Service / Function App 服务中,如果是在Windows系统中,可以通过添加Application Setting来转换为中国时间(WEBSITE_TIME_ZONE : China Standard Time)。
但是如果系统是Linux的话,以上设置无效。那如何才能在Linux 系统中设置时区为中国时区呢?
解决办法
Linux的App Service / Function App 的WEBSITE_TIME_ZONE 配置需要遵循TZ命名规范,中国区的时间对应的值为:Asia/Shanghai.
如果使用的开发语言为Java。可以使用以下代码验证确认本地时间已经设置为中国区。
String dt = LocalDateTime.now().toString(); context.getLogger().info("local time: " + dt);
当Function App的执行日志中显示与北京时间相同即表示修改生效。
参考资料
How do I set the server time zone for my web app? https://docs.microsoft.com/en-us/azure/app-service/faq-configuration-and-management#how-do-i-set-the-server-time-zone-for-my-web-app-
Time zones : https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/default-time-zones?view=windows-11#time-zones