禁用触发的Azure WebJob

Joe*_*nan 3 azure azure-webjobs azure-webjobssdk azureportal azure-web-app-service

我有一个webhook触发的Azure WebJob.由于......原因,我无法控制发送webhooks的系统.每天发送一个webhook.它是WebApp托管的唯一WebJob.

在测试期间,我想禁用此WebJob,因此我停止了WebApp.令我惊讶的是,即使WebApp被禁用,WebJob也会运行.

所以我的问题是双重的:

  1. 能否在WebApp被故意禁用时触发WebJob,或者我遇到某种错误?
  2. 如果这是故意的,有没有办法通过Azure门户禁用此作业?

如果我的问题的唯一解决方案是让WebJob检查配置值以确定是否运行,那就可以了.我认为必须有一种方法可以通过我缺少的门户来禁用WebJob.

Sen*_*nel 6

您还可以在应用程序设置中设置WEBJOBS_STOPPED设置,尤其是在发布到dev插槽时.

https://github.com/projectkudu/kudu/wiki/WebJobs


Dav*_*bbo 5

停止应用程序不会停止运行WebJobs的scm站点.有一种更高级的方法,您可以通过设置state=StoppedscmSiteAlsoStopped=true站点对象在API级别停止它.这可以使用资源浏览器完成.

有关更多详细步骤,请参阅https://github.com/projectkudu/kudu/wiki/Full-stopping-a-Web-App.