部署在Azure应用程序使用NLog组件进行日志输出,如购买的Azure云是国际版(非中国版Azure),默认使用国标时间(即:UTC)来输出日志时间,与中国地区的时间相差8小时(即:UTC+8)。
在查看日志内容时不能快速定位到实际的输出时间点,为了解决输出日志的时区问题,可以在要输出日志的Azure应用程序服务增加指定时区的配置信息(即:WEBSITE_TIME_ZONE)。
若指定中国时区,则 WEBSITE_TIME_ZONE = China Standard Time。
Azure提供了所有时区说明:http://zonetime.azurewebsites.net/
时区设置
Azure应用程序服务 >> 配置 >> 应用程序设置,增加名为“WEBSITE_TIME_ZONE”设置信息,值为时区Id,如下截图:
Azure应用程序服务配置好时区后,在NLog配置文件中使用 ${date:format=yyyy-MM-dd HH\:mm\:ss} layouts 属性,则根据配置的时区来输出日期时间值,如下示例:
${date:format=yyyy}/${date:format=MM}/${date:format=dd}/${machinename}.log
NLog详细 layouts 说明:
Config | NLog