Kann mir bitte jemand vorschlagen, wie man die Validierung von Webjobs zu stoppen und starten richtig passiert oder nicht? Derzeit stoppe ich und starte die Webjobs über PowerShell, aber ich muss nach dem Stopp validieren und starten, ob richtig gemacht oder nicht. Bitte teile deine Gedanken dazu. Da suche ich ständig online und blogs nach der richtigen Lösung die keiner einmal bieten kann Die genaue Lösung dafür. Ich führe die PowerShell-Skripte über VSTS mit VSTS PowerShell Task.Oder sonst bitte aktualisieren Sie alle anderen Möglichkeiten, um Webjobs von VSTS zu validieren?Wie können Sie kontinuierliche Webjobs prüfen? Stop und Start ordnungsgemäß ausgeführt oder nicht über PowerShell?
Antwort
Es dauert ein paar Sekunden, um den Webjob zu stoppen, so dass Sie den Status nach ein paar Sekunden überprüfen können. Zum Beispiel:
[object]$paramObj=Get-Content "d:\a\r1\a\continuous\Scripts\Webjobs_Parameters.json" |ConvertFrom-Json
$userName =$paramObj.userName
$password =$paramObj.password
$webAppName =$paramObj.webAppName
$resourceGroup=$paramObj.resourceGroup
[object[]]$webJobs=$paramObj.webJobs
$Apiversion="2016-08-01"
$webJobArr=New-Object System.Collections.ArrayList
foreach($wj in $webjobs)
{
$webJobArr.Add($wj.name)
if($wj.typeName -eq "continuous")
{
Invoke-AzureRmResourceAction -ResourceGroupName $resourceGroup -ResourceType Microsoft.Web/sites/ContinuousWebJobs -ResourceName "$webAppName/$($wj.name)" -Action stop -ApiVersion $Apiversion -Force
Write-Host "continuous"
Write-Host "$wj.name is Stopping"
}
}
$tryCount=4
$i = 1
while($i -lt $tryCount){
$errorsJobs=New-Object System.Collections.ArrayList
Start-Sleep -s 5
Write-Host "starting $i try......."
$i +=1
$continuejobs=Get-AzureRmResource -ResourceGroupName $resourceGroup -ResourceName $webAppName -ResourceType Microsoft.web/sites/ContinuousWebJobs -ApiVersion $Apiversion
foreach($webJob in $continuejobs)
{
if($webJobArr -contains $webJob.Properties.name){
if($webJob.Properties.status -ne "Stopped"){
$errorsJobs.Add($webJob.Properties.name)
}
}
}
if($errorsJobs.Count -gt 0){
$result=$errorsJobs -join ";"
Write-Host "Some jobs are not stopped: $result. Try to check again"
}
else{
Write-Host "All jobs are stopped."
break
}
if(($i -eq $tryCount) -and ($errorsJobs.Count -gt 0)){
Write-Error "Some jobs are not stopped: $result."
}
}
Update 1:
param(
[string]$currentEnv
)
[object]$paramObj=Get-Content "d:\a\r1\a\DSPPortalJobs\WebJobs_scripts\WebJob_list.json" |ConvertFrom-Json
$userName =$paramObj.$currentEnv.userName
$password =$paramObj.$currentEnv.password
$webAppName =$paramObj.$currentEnv.webAppName
$resourceGroup=$paramObj.$currentEnv.resourceGroup
[object[]]$webJobs=$paramObj.$currentEnv.webJobs
$Apiversion="2016-08-01"
$webJobArr=New-Object System.Collections.ArrayList
foreach($wj in $webjobs)
{
$webJobArr.Add($wj.name)
}
$tryCount=4
$i = 1
while($i -lt $tryCount){
$errorsJobs=New-Object System.Collections.ArrayList
Start-Sleep -s 5
Write-Host "starting $i try......."
$i +=1
$continuejobs=Get-AzureRmResource -ResourceGroupName $resourceGroup -ResourceName $webAppName -ResourceType Microsoft.web/sites/ContinuousWebJobs -ApiVersion $Apiversion
foreach($webJob in $continuejobs)
{
if($webJobArr -contains $webJob.Properties.name){
if($webJob.Properties.status -ne "Running"){
$errorsJobs.Add($webJob.Properties.name)
}
}
}
if($errorsJobs.Count -gt 0){
$result=$errorsJobs -join ";"
Write-Host "Some jobs are not Running: $result. Try to check again"
}
else{
Write-Host "All jobs are Running."
break
}
if(($i -eq $tryCount) -and ($errorsJobs.Count -gt 0)){
Write-Error "Some jobs are not Running: $result."
}
}
Ich führe das obige Skript aus, aber wenn einer meiner Webjobs läuft, sollte er nicht mit dem nächsten Schritt fortfahren. Aber das obige Skript sagt, dass alle Jobs gestoppt sind. Ich führe das obige Skript in zwei verschiedenen Skripten aus, eine ist Webjobs zu stoppen und eine andere, um die Webjobs zu validieren. So funktioniert die Validierung nicht gut. Bitte helfen Sie mir hier. Ich habe meine Fehlerprotokoll @ https://1drv.ms/f/s!AvMxvVJdKJlVhxr5ZCmTk6WNvZwp angeschlossen.Bitte überprüfen und helfen ich raus. – PRAVEEN
@ starian chen-MSFT, gemäß den oben genannten Links, die ich geteilt habe, unter meinen 4 webjobs, 2 webjobs laufen und 2 webjobs laufen nicht.So laut dem Skript sollte es scheitern, aber es ist nicht failing.So bitte helfen Sie mir. – PRAVEEN
Sie müssen nicht die Webjobs in einer anderen Aufgabe validieren, tun Sie es einfach zusammen. Wenn Sie es immer noch in einer anderen Aufgabe validieren möchten, können Sie die Aktualisierung meiner Antwort überprüfen. Welchen Status möchten Sie validieren, ausführen oder stoppen? –
- 1. programmsteuerung über azure vm start/stop
- 2. Visual Studio-Team-Services, kontinuierliche Bereitstellung und WebJobs
- 3. Start und Stop @JmsListener
- 4. Start-Stop-Daemon und Java-Programm
- 5. Kontinuierliche Abfragen werden nicht ausgeführt
- 6. Powershell Stop Service remote
- 7. Oozie Workflow nicht ordnungsgemäß ausgeführt
- 8. subprocess.run nicht ordnungsgemäß ausgeführt pandoc
- 9. Bash Awk: Median über Windows mit Start und Stop-Positionen
- 10. Media Player Start Stop Start
- 11. Programm, das Vokale liest und löscht sie nicht ordnungsgemäß ausgeführt
- 12. Azure WebJobs und Bereitstellungssteckplätze
- 13. Wie können wir Webjobs nach der Bereitstellung neu starten?
- 14. Vor dem Start auf .NET-Abhängigkeiten prüfen
- 15. Powershell 'Start-Job' versus 'Start-Prozess'
- 16. Javascript: Erstellen Sie eine Stop/Start-Funktion?
- 17. Wie kann ein PowerShell-Skript beim Start automatisch ausgeführt werden?
- 18. Anwendung startet nicht ordnungsgemäß beim Windows-Start
- 19. Start/Stop Tastendruckereignis jquery
- 20. Task-Scheduling und Powershell der Start-Job
- 21. FX7500 Eingebettete Java-Anwendung Start/Stop
- 22. So beenden Sie eine Spring Boot-Anwendung ordnungsgemäß durch Start-Stop-Daemon
- 23. Start/Stop von HTA
- 24. PowerShell Remote-Sitzung und Start-Job-Problem
- 25. Start Stop JMS Message Listener
- 26. Spring Batch bedingten Schritt, nicht ordnungsgemäß ausgeführt
- 27. Wie können Integrationstests und Komponententests getrennt über Maven ausgeführt werden?
- 28. ScheduledExecutorService Start Stop mehrmals
- 29. Verwalten von Video Start/Stop
- 30. Catalyst beim Start mit Start-Stop-Daemon
Sie scheinen zu fragen zu sein für jemanden einen Code für Sie zu schreiben. Stack Overflow ist eine Frage-Antwort-Website, kein Code-Schreibdienst. Bitte [siehe hier] (http://stackoverflow.com/help/how-to-ask) um zu erfahren, wie man effektive Fragen schreibt. – Clijsters
Hi Clijsters, ich habe das Skript bei mir aber ich bin mir nicht sicher wo der Fehler liegt.So habe ich dieses Skript im Stack Forum gepostet aber keine Antwort von irgendjemand bekommen. So habe ich den neuen Thread auf dem selben geöffnet Problem.Ich weiter Leute bitten, mir zu meinem Problem zu helfen.Da ich keine Antwort erhalten habe, habe ich diesen neuen Thread geöffnet.Wenn Sie mir dabei helfen können, werde ich meinen vorhandenen Thread geöffnet @ https: // stackoverflow. com/questions/47694580/failing-mit-der-webjobs-validation-script? noredirect = 1 # comment82376212_47694580. Bitte hilfe hier und lass mich wissen, wo ist der fehler. – PRAVEEN
Sehr geschätzt, wenn Sie mir bei meinem Problem helfen können. – PRAVEEN