Azure Stop a Triggered Web Job

删除回忆录丶 提交于 2019-12-21 07:19:11

问题


In Azure, Once a Triggered Web Job has begun? What do we need to do - to stop it?

Background:

Our Web Job populates a Service Bus Queue that then scale out our worker roles - our worker roles are using a 3rd party API - and are getting errors. This is causing our queue to grow larger and larger - and creating more and more worker roles. This is expensive.


回答1:


as Kobynet explained above we are using the kudu api and we have the following powershell snippet for stopping the proccess

    $username = $website.PublishingUsername
    $password = $website.PublishingPassword
    $base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $username,$password)))
    $ps = Invoke-RestMethod -Uri "$apiBaseUrl/processes" -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)} -Method GET    
    $id = $($ps | where {$_.name -eq $jobname} ).id
    Invoke-RestMethod -Uri "$apiBaseUrl/processes/$id" -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)} -Method DELETE    
    write-host "killed process $id"



回答2:


I'm not sure when this was added but I managed to kill the jobs via the Kudu Process Explorer.

https://[websitename].scm.azurewebsites.net/ProcessExplorer/

Wait for the process to appear and simply right click and kill process.




回答3:


The best option we have found is to use KUDU api for getting list of processes, and then kill the desired webjob process.




回答4:


You can do by clicking on Restart button on the app service that hosts the webjob. it actually clear all jobs and you need to re-deploy.

Note: This button is available on the new portal "portal.azure.com" only but not the old one.

hope this helps.



来源:https://stackoverflow.com/questions/26636995/azure-stop-a-triggered-web-job

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!