В настоящее время я использую nginx в своей системе Windows и создаю небольшую панель управления для отображения статистики моего веб-сервера.
Я пытаюсь получить счетчики производительности для использования ЦП и памяти для процесса, но nginx показывает, что это более чем один процесс, он может варьироваться от 2 до 5 в зависимости от настройки в файле конфигурации. Моя настройка показывает два процесса, поэтому nginx.exe и nginx.exe
Я знаю, какие счетчики производительности использовать, % Processor Time
и Working Set - Private
, но как мне получить отдельные значения обоих процессов, чтобы я мог сложить их вместе для получения окончательного значения?
Я попытался использовать код, найденный на Вопрос о вафлях , но он мог вывести значения только для первого процесса из двух.
Спасибо.
РЕДАКТИРОВАТЬ - Рабочий код
for (int i = 0; i < instances.Length; i++)
{
//i = i + 1;
if (i == 0)
{
toPopulate = new PerformanceCounter
("Process", "Working Set - Private",
toImport[i].ProcessName,
true);
}
else
{
toPopulate = new PerformanceCounter
("Process", "Working Set - Private",
toImport[i].ProcessName + "#" + i,
true);
}
totalNginRam += toPopulate.NextValue();
instances[i] = toPopulate;
}