我开发了一个时间触发的Azure Web Job,并以触发类型发布到Azure中。一切正常,但有时 Web 作业会进入关闭状态,而不会在 Web 作业仪表板日志和 kudu 日志中记录任何异常信息。
在此处发布问题之前,我阅读了这篇关于优雅关机的博客。
那么,谁能建议我如何解决上述问题。
对于连续作业,在被杀死之前有 5 秒的默认等待时间来等待作业进程关闭。
对于触发作业,当检测到关闭请求时,作业进程有 30 秒的默认等待时间来停止。
您可以通过在 settings.job 文件中指定作业的宽限期(以秒为单位)来更改作业的宽限期,其中设置的名称为
stopping_wait_time
,如下所示:
{ "stopping_wait_time": 60 }
这里有一个类似的问题你可以参考一下。
在我们的例子中,触发的网络作业不时被中止。 Azure 中止触发的 Web 作业只是因为它运行时间太长。默认超时为 2 小时。要将超时增加 2 倍或您需要的值,需要在 settings.job 中添加以下内容。
{
"timeout": "04:00:00"
}