HOWTO在Azure中更新webjob的时间表

时间:2017-10-24 09:21:50

标签: azure azure-webjobs azure-scheduler

我在appjob中添加了一些webjobs。网络工具从VS以及新版本的webapp中取消。

安排我已将settings.job文件添加到webjob根文件夹的作业。

如果我查看Azure,则会正确安排webjobs。

但是如何从Azure更改该计划?现在改变该计划的唯一方法似乎是更改settings.job文件并从VS重新部署。

更新:

鉴于KUDU并不总是有效,并且改变时间表的程序并不适合非技术用户。我开始考虑使用azure调度程序。但无法找到如何让它发挥作用。

从webapp | webjob配置我拿了webhookurl,usr,pwd。 使用此webhookurl和凭证(基本身份验证)

创建了新计划

但是我收到了这个错误:

没有为“/api/triggeredwebjobs/<webjobname>/run

注册的路线

有什么建议吗?

3 个答案:

答案 0 :(得分:2)

  

如何更改settings.job计划。

  • 您可以将settings.job文件放在WebJob目录的根目录下进行修改,然后重新部署WebJob项目。

  • 您可以利用kudu,然后导航至D:\home\site\wwwroot\app_data\jobs\triggered\<job-name>,然后修改settings.job

此外,您可以使用WebJobs API创建/更新已触发作业的计划,它会自动为您创建/更新settings.job文件。

PUT https://{webdeploy-username}:{password}@{your-webapp-name}.scm.azurewebsites.net/api/triggeredwebjobs/{webjob-name}/settings

Body: {"schedule": "*/30 * * * * *"}

我已经在kudu上查看了我的WebJob日志,修改后的计划需要一些时间才能付出努力。

  

我开始考虑使用azure调度程序。但无法找到如何让它发挥作用。

     

没有为'/ api / triggeredwebjobs // run'

注册的路线

对于Azure Scheduler,您可以参考David Ebbo的博客here。根据您的错误,我认为您的Http方法有误,您应该使用 POST 。这是我的测试,你可以参考它:

enter image description here

答案 1 :(得分:0)

您还可以在https://yoursite.scm.azurewebsites.net访问Kudu(高级工具),并通过控制台直接修改settings.job文件。

我建议您重新部署,以便始终在版本控制中拥有正确的计划。否则你可能会发布,然后再次意识到你有旧的时间表。

答案 2 :(得分:0)

对于那些在同一问题上挣扎的人:

最佳解决方案是使用Azure的Scheduler作业集合。 棘手的部分是找出如何设置它。

动作设置: - https - 复制你在webjob的属性页面中找到的uri来调用,它被称为'webhook' - 从同一个地方复制凭证