У нас есть сервер Windows 2003, на котором постоянно работают 3 службы. Иногда эти сервисы потребляют более 90% процессорного времени. Перезапуск этих сервисов возвращает нормальность. Мне нужен скрипт / программа, которая будет постоянно следить за загрузкой процессора и, если нагрузка высокая, перезапустить эти сервисы
После небольшого исследования я нашел этот скрипт для мониторинга загрузки процессора из Technet.
Скрипт для мониторинга использования процессора:
(get-counter -Counter "\Processor(_Total)\% Processor Time"
-SampleInterval 1 -MaxSamples 10 |
select -ExpandProperty countersamples | select -ExpandProperty
cookedvalue | Measure-Object -Average).average
Это контролирует использование ЦП в течение 10 секунд, а затем отображает усредненный результат.
Также из Stack Overflow и Server Fault я нашел сценарии для перезапуска служб Windows. (Какой из них лучше?)
Теперь все, что мне нужно, это чтобы сценарий использования ЦП вызывал сценарии перезапуска службы, когда выполняется условие, что использование> 90%. Любая помощь будет оценена.