Performance counters windows server

Счетчики производительности сети Network-Related Performance Counters

Применяется к: Windows Server (Semi-Annual Channel), Windows Server 2016 Applies to: Windows Server (Semi-Annual Channel), Windows Server 2016

В этом разделе перечислены счетчики, относящиеся к управлению производительностью сети, и приведены следующие разделы. This topic lists the counters that are relevant to managing network performance, and contains the following sections.

Использование ресурсов Resource Utilization

Следующие счетчики производительности относятся к использованию сетевых ресурсов. The following performance counters are relevant to network resource utilization.

IPv4, IPv6 IPv4, IPv6

Получено датаграмм/с Datagrams Received/sec

Отправлено датаграмм/с Datagrams Sent/sec

TCPv4, TCPv6 TCPv4, TCPv6

Получено сегментов/с Segments Received/sec

Отправлено сегментов/с Segments Sent/sec

Передано сегментов в секунду Segments Retransmitted/sec

Сетевой интерфейс (*), сетевой адаптер ( * ) Network Interface(*), Network Adapter(*)

Полученных байтов/с Bytes Received/sec

Отправленных байтов/с Bytes Sent/sec

Получено пакетов/сек Packets Received/sec

Отправлено пакетов/сек Packets Sent/sec

Вывод длины очереди Output Queue Length

Этот счетчик представляет собой длину очереди исходящих пакетов ( в пакетах ) . This counter is the length of the output packet queue (in packets). Если это значение превышает 2, происходит задержка. If this is longer than 2, delays occur. Вы должны найти узкое место и устранить ее, если можете. You should find the bottleneck and eliminate it if you can. Так как NDIS помещает запросы в очередь, эта длина всегда должна быть равна 0. Because NDIS queues the requests, this length should always be 0.

Сведения о процессоре Processor Information

% загруженности процессора % Processor Time

Поставлено в очередь DPC/с DPCs Queued/sec

Этот счетчик представляет собой среднюю скорость добавления DPC в очередь DPC логического процессора. This counter is an average rate at which DPCs were added to the logical processor’s DPC queue. Каждый логический процессор имеет собственную очередь DPC. Each logical processor has its own DPC queue. Этот счетчик измеряет скорость, с которой DPC добавляется в очередь, а не число DPC в очереди. This counter measures the rate at which DPCs are added to the queue, not the number of DPCs in the queue. В нем отображается разница между значениями, которые были замечены в двух последних примерах, деленная на длительность интервала выборки. It displays the difference between the values that were observed in the last two samples, divided by the duration of the sample interval.

Потенциальные проблемы с сетью Potential Network Problems

Следующие счетчики производительности важны для возможных проблем с сетью. The following performance counters are relevant to potential network problems.

Читайте также:  C windows system32 microsoft svchost exe

Сетевой интерфейс (*), сетевой адаптер ( * ) Network Interface(*), Network Adapter(*)

Отклонено входящих пакетов Packets Received Discarded

Ошибки входящих пакетов Packets Received Errors

Отклонено исходящих пакетов Packets Outbound Discarded

Ошибки исходящих пакетов Packets Outbound Errors

WFPv4, WFPv6 WFPv4, WFPv6

  • Отклоненных пакетов/с Packets Discarded/sec

UDPv4, UDPv6 UDPv4, UDPv6

  • Полученных датаграмм с ошибками Datagrams Received Errors

TCPv4, TCPv6 TCPv4, TCPv6

Ошибки подключения Connection Failures

Сбросов подключений Connections Reset

Политика качества обслуживания сети Network QoS Policy

Пакетов отброшено Packets dropped

Отброшенных пакетов/с Packets dropped/sec

Активность сетевого адаптера для каждого процессора Per Processor Network Interface Card Activity

Нехватка появления ресурсов в секунду Low Resource Receive Indications/sec

Пакетов, полученных низкими ресурсами/с Low Resource Received Packets/sec

Загрузочный процессор Microsoft WinSock Microsoft Winsock BSP

Удалены датаграммы Dropped Datagrams

Сброшено датаграмм/с Dropped Datagrams/sec

Число отклоненных подключений Rejected Connections

Отклонено подключений в секунду Rejected Connections/sec

Производительность объединения на стороне получения (RSC) Receive Side Coalescing (RSC) performance

Следующие счетчики производительности важны для производительности RSC. The following performance counters are relevant to RSC performance.

Сетевой адаптер (*) Network Adapter(*)

Активные подключения RSC TCP TCP Active RSC Connections

Средний размер пакета TCP RSC TCP RSC Average Packet Size

Объединенных пакетов TCP RSC/с TCP RSC Coalesced Packets/sec

Исключений TCP RSC/с TCP RSC Exceptions/sec

Ссылки на все разделы данного руководства см. в разделе Настройка производительности сетевой подсистемы. For links to all topics in this guide, see Network Subsystem Performance Tuning.

Мониторинг производительности Windows Server, настройка оповещений счетчиков PerfMon

В этой статье мы рассмотрим особенности использования встроенных счетчиков производительности Performance Monitor для мониторинга состояния Windows Server. Счетчики PerfMon можно использовать для отслеживания изменений определенных параметров производительности сервера (алертов) и оповещать администратора в случае возникновения высокой загрузки или других нештатных состояниях.

Чаще всего для мониторинга работоспособности, доступности, загруженности серверов используются сторонние продукты. Если вам нужно получать информацию о производительности приложений либо железа только с одного-двух Windows-серверов, либо когда это нужно на непостоянной основе, либо возник более сложный случай, требующий глубокого траблшутинга производительности, то можно воспользоваться встроенным функционалом Windows Performance Monitor.

Основные возможности Performance Monitor, которые можно использовать отдельно или совместно с другими сторонними системами мониторинга (типа Zabbix, Nagios, Cacti и другие):

  • cистема мониторинга при выводе информации о производительности сначала обращается к Performance Monitor;
  • главной задачей системы мониторинга является оповещение о наступлении тревожного момента, аварии, а у Performance Monitor – собрать и предоставить диагностические данные.

Текущие значения производительности Windows можно получить из Task Manager, но Performance Monitor умеет несколько больше:

  • Task Manager работает только в реальном времени и только на конкретном (локальном) хосте;
  • в Performance Monitor можно подключать счётчики с разных серверов, вести наблюдение длительное время и собранную информацию сохранять в файл;
  • в Task Manager очень мало показателей производительности.

Мониторинг производительности процессора с Perfomance Monitor

Для снятия данных о производительности процессора воспользуемся несколькими основными счётчиками:

  • \Processor\% Processor Time определяет уровень загрузки ЦП, и отслеживает время, которое ЦП затрачивает на работу процесса. Уровень загрузки ЦП в диапазоне в пределах 80-90 % может указывать на необходимость добавления процессорной мощности.
  • \Processor\%Privileged Time — соответствует проценту процессорного времени, затраченного на выполнение команд ядра операционной системы Windows, таких как обработка запросов ввода-вывода SQL Server. Если значение этого счетчика постоянно высокое, и счетчики для объекта Физический диск также имеют высокие значения, то необходимо рассмотреть вопрос об установке более быстрой и более эффективной дисковой подсистемы (см. более подробную статью об анализе производительности дисков с помощью PerfMon).
  • \Processor\%User Time — соответствует проценту времени работы CPU, которое он затрачивает на выполнение пользовательских приложений.
Читайте также:  Настройка серверов под linux

Запустите Performance Monitor с помощью команды perfmon. В разделе Performance Monitor отображается загрузкой CPU в реальном времени с помощью графика (параметр Line), с помощью цифр (параметр Report), с помощью столбчатой гистограммы (параметр Histogram bar) (вид выбирается в панели инструментов). Чтобы добавить счетчики, нажмите кнопку “+” (Add Counters).

Слева направо двигается линия в реальном времени и отображает график загрузки процессора, на котором можно увидеть, как всплески, так и постоянную нагрузку.

Например, вам нужно посмотреть загрузку процессора виртуальными машинами и самим Hyper-V. Выберите группу счетчиков Hyper-V Hypervisor Logical Processor, выберите счетчик % Total Run Time. Вы можете показывать нагрузку по всем ядрам CPU (Total), либо по конкретным (HV LP №), либо всё сразу (All Instances). Выберем Total и All Instances.

Группы сборщиков данных в PerfMon

Чтобы не сидеть целый за наблюдением движения линии, создаются группы сбор данных (Data Collector Set), задаются для них параметры и периодически просматриваются.

Чтобы создать группу сбора данных, нужно нажать на разделе User Defined правой кнопкой мыши, в меню выбрать New -> Data Collector Set. Выберите Create manually (Advanced) -> Create Data Logs и включите опцию Performance Counter. Нажмите Add и добавите счётчики. В нашем примере % Total Run Time из группы Hyper-V Hypervisor Logical Processor и Available MBytes из Memory. Установите интервал опроса счётчиков в 3 секунды.

Далее вручную запустите созданный Data Collector Set, нажав на нём правой кнопкой мыши и выбрав в меню пункт Start.

Через некоторое время можно просмотреть отчёт. Для этого в контекстном меню группы сбора данных нужно выбрать пункт Latest Report. Вы можете посмотреть и проанализировать отчёт производительности в виде графика. Отчёт можно скопировать и переслать. Он хранится в C:\PerfLogs\Admin\CPU_Mon и имеет расширение .blg.

Если нужно на другом сервере запустить такой же набор счётчиков, как на первом, то их можно переносить экспортом. Для этого в контекстном меню группы сбора данных выберите пункт Save Template, укажите имя файла (расширение .xml). Скопируйте xml файл на другой сервер, создайте новую группу сбора данных, выберите пункт Create from a template и укажите готовый шаблон.

Читайте также:  Команда linux удалить всю директорию

Создание Alert для мониторинга загрузки CPU

В определённый критический момент в Performance Monitor могут срабатывать алерты, которые помогают ИТ-специалисту прояснить суть проблемы. В первом случае алерт может отправить оповещение, а во втором – запустить другую группу сбора данных.

Чтобы создать алерт в PerfMon, нужно создать ещё один Data Collector Set. Укажите его имя CPU_Alert, выберите опцию Create manually (Advanced), а затем — Performance Counter Alert. Добавьте счётчик % Total Run Time из Hyper-V Hypervisor Logical Processor, укажите границу загрузки 50 %, при превышении которой будет срабатывать алерт, установите интервал опроса счётчика в 3 секунды.

Далее нужно зайти в свойства данной группы сбора информации, перейти на вкладку Alert Action, включить опцию Log an entry in the application event log и запустить группу сбора данных. Когда сработает алерт, в журнале (в консоли Event Viewer в разделе Applications and Services Logs\Microsoft\Windows\Diagnosis-PLA\Operational) появится запись:

Performance counter \Processor(_Total)\% Processor Time has tripped its alert threshold. The counter value of 100.000000 is over the limit value of 50.000000. 50.000000 is the alert threshold value”.

Здесь же рассмотрим и второй случай, когда нужно запустить другую группу сбора данных. Например, алерт срабатывает при достижении высокой загрузки CPU, делает запись в лог, но вы хотите включить сбор данных с других счётчиков для получения дополнительной информации. Для этого необходимо в свойствах алерта в меню Alert Action в выпадающем списке Start a data collector set выбрать ранее созданную группу сбора, например, CPU_Mon. Рядом находится вкладка Alert Task, в которой можно указать разные аргументы либо подключить готовую задачу из консоли Task Scheduler, указав её имя в поле Run this task when an alert is triggered. Будем использовать второй вариант.

С помощью Task Scheduler можно выполнить какие-то действия: выполнить команду, отправить письмо или вывести сообщение на экран (сейчас последниед ве функции не поддерживаются, считаются устаревшими (deprecated)). Для вывода на уведомления на экран можно использовать скриптом PowerShell. Для этого в консоли Task Scheduler создайте новую задачу, на вкладке Triggers выберите One time, на вкладке Actions в выпадающем поле Action выбирите параметр Start a program, в поле Program/Script укажите powershell.exe, а в поле Add arguments (optional) следующий код:

-WindowStyle hidden -Command «& <[System.Reflection.Assembly]::LoadWithPartialName('System.Windows.Forms'); [System.Windows.Forms.MessageBox]::Show('Внимание, CPU загружен', 'Посмотреть')>«

Для отправки письма вы можете воспользоваться командлетом PowerShell Send-MailMessage или стороннюю утилиту mailsend.exe.. Для этого создайте аналогичное задание в Task Scheduler, в поле Program/Script укажите полный путь к утилите (у нас C:\Scripts\Mail\mailsend.exe), а в поле Add arguments (optional) через параметры нужно передать значения: электронный адрес, адрес и номер порта SMTP-сервера, текст письма и заголовка, пароль:

-to dep.it@ddd.com -from dep.it@ddd.com -ssl -port 465 -auth -smtp smtp.ddd.com -sub Alarm -v -user dep.it@ddd.com +cc +bc -M «Alarm, CPU, Alarm» -pass «it12345»

где +cc означает не запрашивать копию письма, +bc — не запрашивать скрытую копию письма.

Оцените статью