질문이 있습니다. 새로운 버전을 배포하는 동안 appservice의 webjobs를 비활성화하고 배포 후에 다시 활성화하고 싶습니다.Azure WebJobs in C#
거기에 C# 할 가능성이 있습니까? 너희들
질문이 있습니다. 새로운 버전을 배포하는 동안 appservice의 webjobs를 비활성화하고 배포 후에 다시 활성화하고 싶습니다.Azure WebJobs in C#
거기에 C# 할 가능성이 있습니까? 너희들
알다시피, 당신은 트리거 된 WebJob을 직접 멈출 수 없었습니다. KUDU을 통해 프로세스 탐색기를 사용하여이를 종료해야합니다. 연속 WebJob의 경우 WebJobs API을 사용하여 WebJob을 시작/중지 할 수 있으며 웹 응용 프로그램의 Deployment credentials을 사용하여 기본 인증을 사용하여 특정 Rest API를 호출해야합니다. 여기에 WebJob을 막을 수있는 C# 코드 조각은 다음과 같습니다
string username = "{username}";
string password = "{password}";
string jobname = "{your-webjob-name}";
string authorization = Convert.ToBase64String(System.Text.UTF8Encoding.UTF8.GetBytes($"{username}:{password}"));
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", authorization);
var res = await client.PostAsync($"https://{your-webapp-name}.scm.azurewebsites.net/api/continuouswebjobs/{jobname}/stop", null);
Console.WriteLine($"StatusCode:{res.StatusCode}");
}
참고 : 다음과 같이이 시점에서는 disable.job
라는 이름의 파일은 WebJob에 추가됩니다 : 시작을 위해
WebJob에서 /api/continuouswebjobs/{job name}/start
으로 전화하면 disable.job
파일이 제거되고 WebJob이 다시 실행됩니다.
thanky
는 그냥 REST 호출 할 필요가 외부 클라이언트에서 WebJob를 중지하려면 다음 https://github.com/projectkudu/kudu/wiki/WebJobs-API#stop-a-continuous-job
POST https://{sitename}.scm.azurewebsites.net/api/continuouswebjobs/{job name}/stop
disabled.job의 파일을 추가합니다
으로 다시 WebJob을 시작하십시오
POST https://{sitename}.scm.azurewebsites.net/api/continuouswebjobs/{job name}/start
abled 작업 파일과 webjob이 다시 실행됩니다.
WebJob을 중지하기 위해 웹 서비스에서 전화를 걸면 좋습니다. 하지만 WebJob을 다시 시작하기 위해 어떤 파일을 참조하고 있습니까? –