Я использую Windows Server 2008, и часто есть один процесс, который увеличивает использование ЦП до 25% или более и вызывает множество проблем с замедлением. Сервером удаленно пользуются около 30 пользователей, и если я не обнаружу эту проблему достаточно быстро, работа станет для них очень неприятной.
Есть ли способ автоматически отслеживать и сообщать, если этот процесс становится чрезмерно активным и вызывает проблемы? Фактически процесс представляет собой exe-файл, который запускается как часть веб-приложения для удаленных пользователей КПК.
Вы можете использовать Windows Performance Monitor для отслеживания загрузки ЦП на сервере. Затем вы можете настроить предупреждение, когда оно достигнет определенного порога. Эта статья дает хорошее описание настройки.
Предупреждение позволит вам либо записать это в журнал событий, либо отправить сообщение netsend, либо, что более полезно, запустить программу. Затем вы можете настроить это для запуска сценария или пакетного файла, который будет отправлять электронное письмо, пейджер или ваш любимый метод уведомления.
25% - это немного. Предполагая, что этот счетчик переходит на 100%, то каждые 4 секунды времени на стене ваш процессор простаивает в течение 3 из них.
Я бы более глубоко изучил основные процессы на этой машине, я бы подозревал, что существует конкуренция за ресурс, отличный от ЦП, скорее всего, за дисковый ввод-вывод или пропускную способность сети, возможно, даже за ресурсы с другой машины, которая обслуживает этот процесс.
используйте этот инструмент от Microsoft, который предоставляет вам все инструменты Assessment Solution Accelerator
с помощью вышеупомянутого инструмента используйте WMI, поэтому он не использует много аппаратного обеспечения и сети