Azure Webjob在0秒内重新启动。为什么?

问题描述 投票:0回答:1

我的webjob是一个连续的工作,就像它应该循环,所以它不会停止运行。我有一个小的错误处理,它重新启动作业5次,直到它停用代码中的作业。这很好。

但是,如果它第一次重新启动WEBJOBS_RESTART_TIME设置为0或其他类似于下面的示例。我不知道为什么,我知道这只是一个小东西,但下次重新启动它是完美的。

这里0秒:

[11/30/2018 10:57:27 > 2f0a74: SYS ERR ] Job failed due to exit code -1
[11/30/2018 10:57:27 > 2f0a74: SYS INFO] Process went down, waiting for 0 seconds
[11/30/2018 10:57:27 > 2f0a74: SYS INFO] Status changed to PendingRestart
[11/30/2018 10:57:28 > 2f0a74: SYS INFO] Run script 'run.bat' with script host - 'WindowsScriptHost'
[11/30/2018 10:57:28 > 2f0a74: SYS INFO] Status changed to Running

这是重启后的运行:

[11/30/2018 10:59:07 > 2f0a74: SYS ERR ] Job failed due to exit code -1
[11/30/2018 10:59:07 > 2f0a74: SYS INFO] Process went down, waiting for 60 seconds
[11/30/2018 10:59:07 > 2f0a74: SYS INFO] Status changed to PendingRestart
[11/30/2018 11:00:09 > 2f0a74: SYS INFO] Run script 'run.bat' with script host - 'WindowsScriptHost'
[11/30/2018 11:00:09 > 2f0a74: SYS INFO] Status changed to Running

它应该是这样的。 60秒重启时间。为什么这是第一次0?

c# azure error-handling azure-webjobs
1个回答
0
投票

我研究了WEBJOBS_RESTART_TIME中的Github Kudu repo配置设置。如果搜索代码WEBJOBS_RESTART_TIME,您会发现为其定义的varibale WebJobsRestartTime用作别名,如下所示。

public const string WebJobsRestartTime = "WEBJOBS_RESTART_TIME";

然后,继续搜索WebJobsRestartTime,有a code comment解释你怀疑的等待时间060

// The wait time between WebJob invocations is either WebJobsRestartTime (60 seconds by default) or if the WebJob
// Was running for at least 2 minutes there is no wait time.
© www.soinside.com 2019 - 2024. All rights reserved.