Powershell -scriptblock Мониторинг и оркестровка заданий - PullRequest
0 голосов
/ 04 декабря 2018

У меня есть несколько заданий, которые я хотел бы организовать и контролировать в PowerShell.Все это задания -скриптоблоков, поэтому каждый из них выполняется в своей среде.

$Job_List = JobNum1, JobNum2, JobNum3, JobNum4, JobNum5
PS > Get-Job

Id     Name            PSJobTypeName   State         HasMoreData     Location             Command                  
--     ----            -------------   -----         -----------     --------             -------                  
1      JobNum1         BackgroundJob   Running       True            localhost             & $args[0] ; while($t...
3      JobNum2         BackgroundJob   Running       True            localhost             & $args[0] ; while($t...
5      JobNum3         BackgroundJob   Running       True            localhost             & $args[0] ; while($t...
7      JobNum4         BackgroundJob   Running       True            localhost             & $args[0] ; Send-Com...
9      JobNum5         BackgroundJob   Running       True            localhost             & $args[0] ; while($t...

В идеале, на «том же уровне», что и мои задания (то есть не то, что выполняет мои задания в качестве ChildJobs, что является одним измои запасные идеи), я хотел бы добавить контрольное задание.

11     JobController   BackgroundJob   Running       True            localhost             & $args[0] ; while($t...

Контрольное задание будет через регулярный интервал анализировать мой $ Job_List, проверять состояние задания (т. е. запущено или не выполнено в этом базовом примере), но на самом деле мне нужно сделать больше) и перезапустить любое неудачное задание, но не как дочерний элемент JobController.Мне не нужна помощь по логике синтаксического анализа, а скорее по пути организации решения.

Любая идея о том, как этого добиться?

Один запасной план - запустить всеjobs JobNum1, JobNum2 ... как дочерние элементы JobController, но настройка и отладка будут болезненными.Я также открыт для других решений и умных идей.

Заранее спасибо!

Филипп

...