Powershell -scriptblock Мониторинг и оркестровка заданий
У меня есть несколько заданий, которые я хотел бы организовать и контролировать в 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. Мне не нужна помощь в логике синтаксического анализа, а скорее в том, как организовать решение.
Есть идеи, как этого добиться?
Один запасной план - запускать все задания JobNum1, JobNum2... как дочерние элементы JobController, но настройка и отладка будут болезненными. Я также открыт для других решений и умных идей.
Заранее спасибо!
Philippe