C# 创建Webjob计划时出错

C# 创建Webjob计划时出错,c#,azure,publish,azure-webjobs,azure-deployment,C#,Azure,Publish,Azure Webjobs,Azure Deployment,我将源代码托管在TFS 2012内部部署安装中。当我尝试从Visual Studio 2015将我的Azure WebJob发布到Azure时,出现以下错误 错误:创建WebJob计划时出错:响应状态代码不表示成功:409(冲突) WebJob确实是在web应用程序下创建的,但它设置为按需而不是按计划 当我打开Fiddler试图解决这个问题时,我得到以下错误 错误\u连接\u终止:Web部署任务失败。(Web Deploy遇到服务器连接问题,必须终止连接。如果问题仍然存在,请与服务器管理员联系。

我将源代码托管在TFS 2012内部部署安装中。当我尝试从Visual Studio 2015将我的Azure WebJob发布到Azure时,出现以下错误

错误:创建WebJob计划时出错:响应状态代码不表示成功:409(冲突)

WebJob确实是在web应用程序下创建的,但它设置为按需而不是按计划

当我打开Fiddler试图解决这个问题时,我得到以下错误

错误\u连接\u终止:Web部署任务失败。(Web Deploy遇到服务器连接问题,必须终止连接。如果问题仍然存在,请与服务器管理员联系。有关详细信息,请访问:


如何将计划的WebJob发布到Azure?或者至少得到更具体的错误?

我在Web作业部署方面遇到过好几次问题,不得不通过azure门户手动部署它。这有点烦人,但更可靠

如果VS工具不起作用,并且您不想手动设置调度程序,您可以尝试使用Kudu(Web应用程序管理框架)提供的内置调度程序-

要计划触发的WebJob,您需要将计划属性添加到settings.job文件中。计划的值是cron表达式,它有6个字段来表示计划:
{second}{minute}{hour}{day}{month}{day of The week}

您需要使用打开“始终打开”的标准Web应用程序才能工作。

因此,如果希望每5分钟运行一次,只需将以下内容添加到设置文件中

{
  "schedule": "* */1 * * * *"
}

很抱歉工具问题,这是我试图帮助解决的问题。

我也遇到了同样的问题,结果发布过程失败了,因为我将发布过程设置为每10分钟重复一次,而应用程序本应在免费层中运行。正如微软在这里所描述的:


可以使用除分钟内定义的频率以外的所有频率进行部署。

我已经能够通过门户手动创建计划作业,但是手动方法使持续集成变得不可能。有关此机制的更多信息,请参见。Kudu可能不太适合我,因为我们将从内部部署TFS。我意识到我没有在问题中包括这一点。Kudu除了是git和hg之类的部署引擎,如果您要从TFS部署,就不需要它,它也是运行WebJobs的引擎。如果您现在有一个WebJob,那么Kudu就是运行它的工具,因此您可以使用Chris解释的Kudu调度程序。请注意“您需要使用标准WebApp”中的标准-它在基本计划下无法工作,正如David Ebbo在这里解释的那样:重要的更改:现在在Basic和Standard中都支持cron方法。+1谢谢,那篇文章我已经读了好几遍了,但从来没有真正读过那一节!将webjob-publish-settings.json中的jobRecurrenceFrequency更改为“小时”对我来说很有效!我有一个P1(高级)层,但它也不允许在30分钟内发布。看起来很奇怪,他们有这个选项,但不允许发布带有奇怪错误的内容…如果您将计划程序作业集合从“免费”转换为“基本”或“高级”,还记得在“配额”部分更改“最大重复次数”。免费计划程序作业集合的默认最大重复时间为1小时,如果将免费作业集合转换为“基本”或“高级”,则不会更新此值。