
Похоже, у меня возникают проблемы с процессами, потребляющими много ресурсов ЦП/ОЗУ посреди ночи на моих компьютерах с Windows Server 2012r2/2008r2, когда я сплю. Поэтому мне интересно, есть ли автоматизированный способ сбора PID, имени процесса и, возможно, значения командной строки (поскольку рабочие процессы iis отображаются только как w3wp.exe) всякий раз, когда ЦП или ОЗУ загружены на 90% или выше в течение определенного периода времени?
Предпочтительно, чтобы любое решение потребляло как можно меньше накладных расходов, поскольку к моменту, когда решению потребуется действовать, ящики уже будут в плохом состоянии, а мне нужно, чтобы ящики продолжали обслуживать веб-сайты в это время.
Спасибо,
Алекс.
решение1
Вы можете настроить пользовательский набор сборщиков данных в Performance Monitor и запланировать его запуск в период времени, когда вы обычно сталкиваетесь с этой проблемой. Затем просмотрите отчет о наборе сборщиков данных.
решение2
Это будет своего рода хаком на случай, если вы не смогли получить то, что хотите от Process Monitor:
Запустите скрипт PowerShell по расписанию, возможно, каждые 5 минут, чтобы процессы потребляли больше определенного количества ресурсов, и выведите это в файл. Вы можете просмотреть файл в AM (даже отправить его себе по электронной почте) и посмотреть, что выделяется.
Если это покажется вам полезным, дайте мне знать, и я смогу что-нибудь опубликовать, когда в следующий раз сяду за стол.