Batch 如何知道是否重试某些任务?它仅取决于退出代码吗?如果是,我该如何控制退出代码?
从一些日志看来,我的工作中的一项任务被重试了,但我在第一次失败的尝试中找不到输出文件或有关退出代码的信息。有没有办法获得这些信息(事后)?
当我检查我的任务属性时,它说最大任务重试次数为 0,但是,一些日志显示任务重试。这怎么可能?
谢谢!
Batch 如何知道是否重试某些任务?它仅取决于退出代码吗?如果是,我该如何控制退出代码?
从一些日志看来,我的工作中的一项任务被重试了,但我在第一次失败的尝试中找不到输出文件或有关退出代码的信息。有没有办法获得这些信息(事后)?
当我检查我的任务属性时,它说最大任务重试次数为 0,但是,一些日志显示任务重试。这怎么可能?
谢谢!
我也会附上我从中找到此信息的来源,希望这会有所帮助::-)
如果任务以非零退出代码完成并已用完其重试计数,或者如果它有调度错误,则认为该任务已失败。 [1] 所以不仅退出代码bur调度错误会导致任务失败。
如果任务重试到最大并且它们失败了,那么可能是它的尝试失败,因此没有输出文件,您可以随时分享您的示例代码,我们可以看一下,我认为您可以随时将其写入 stderr.txt 或stdout.txt 文件进行跟踪,(我认为任何 console.wrtieline 都会被放入 stdout.txt)。共享代码可能会有所帮助。
我对此并不完全确定,这是否与您从池下的代码中运行的任务有关,并且门户显示错误信息,即重试任务并且门户显示重试 0 次?
[1] - https://docs.microsoft.com/en-us/rest/api/batchservice/add-a-job-to-an-account - 信息来自“onTaskFailure”备注栏
谢谢,