Plugin windows perfmon collector failed возвращаемые данные отсутствуют

Обновлено: 06.07.2024

Эта статья помогает решить проблему, при которой некоторые библиотеки счетчиков производительности повреждены и их необходимо перестроить.

Применяется к: Windows Server 2012 R2
Исходный номер КБ: 2554336

Симптомы

При использовании средства Performance Monitor некоторые счетчики могут быть отсутствуют или не содержат встречных данных. Библиотеки счетчиков производительности могут быть повреждены и нуждаются в восстановлении.

В журнале приложений можно увидеть следующие ошибки:

Причина

Такое поведение может произойти, если некоторые стойки развращают реестр или если Windows программ управления (WMI) изменить реестр.

Решение

Чтобы устранить эту проблему, используйте следующие методы.

Убедитесь, что счетчики не отключены в реестре

Счетчики могут быть отключены с помощью параметров реестра. Проверьте следующие расположения реестра, чтобы убедиться, что счетчики не были отключены:

%servicename% представляет любую службу со счетчиком производительности. Например: PerfDisk, PerfOS и т. д.

В любом из этих местоположений могут быть ключи реестра для disablePerformanceCounters. Согласно статье Отключение счетчиков производительности,это значение должно быть установлено до 0. Если значение не превышает 0, счетчик может быть отключен.

  • Значение 1 означает отключение счетчика.
  • Значение 2 означает отключение 32-битного счетчика.
  • Значение 4 означает отключение 64-битного счетчика.

Восстановление всех счетчиков производительности, включая раздвимые и сторонние счетчики

Чтобы восстановить все счетчики производительности, включая дополнительные и сторонние счетчики, введите следующие команды в командной подсказке администрирования. Нажмите КНОПКУ ВВОД после каждой команды.

Resync the counters with Windows Management Instrumentation (WMI):

Остановите и перезапустите службу журналов производительности и оповещений.

Остановите и перезапустите службу Windows управления.

Создайте новый набор сборщиков данных (не используйте существующий набор сборщика данных).

Иногда запуск lodctr /R может не восстановить все счетчики. Если вы заметили это, убедитесь, что файл c:\windows\system32\PerfStringBackup.INI содержит соответствующую информацию. Этот файл можно скопировать с идентичной машины, чтобы восстановить счетчики. В этом файле могут быть небольшие различия между машиной и машиной. Но если вы заметите резкое различие в размерах, может не оказаться сведений. Всегда создайте копию резервного копирования перед заменой. Нет никакой гарантии, что копирование этого файла с другой машины восстановит все счетчики. Если это возможно, сравните файл с резервными копиями компьютера, чтобы узнать, уменьшился ли размер файла в определенный момент времени.

Для многих счетчиков расположение файлов ini для установки счетчиков perf находится под , например, windows\winsxs файлами ini для IIS.

Если вы видите следующие ошибки:

Вам потребуется использовать счетчик установки файлов ini в каталоге c:\Windows\winsxs .

Для счетчиков, которые необходимо отремонтировать, может существовать несколько папок. В этих случаях может потребоваться использовать пробные и ошибки для поиска правильных файлов ini.

и муторно переводим имя счетчика в цифру.
У меня получилось следующее. Соответственно по ним и будем создавать мониторинг.
\LogicalDisk(_Total)\Avg. Disk sec/Write
\236(_Total)\210

\LogicalDisk(_Total)\Avg. Disk sec/Read
\236(_Total)\208

\Network Interface(*)\Bytes Sent/sec
\510(*)\506

\Network Interface(*)\Bytes Total/sec
\510(*)\508

\Network Interface(*)\Bytes Received/sec
\510(*)\898

\Network Interface(*)\Output Queue Length
\510(*)\544

\PhysicalDisk(_Total)\% Idle Time
\234(_Total)\1482

\PhysicalDisk(_Total)\Avg. Disk sec/Read
\234(_Total)\208

\PhysicalDisk(_Total)\Avg. Disk sec/Write
\234(_Total)\210

\Server Work Queues(*)\Queue Length
\1300(*)\1302

\System\Processor Queue Length
\2\44

\Memory\Free System Page Table Entries
\4\678


Итак, мы готовы мониторить данные счетчики.
Для этого предполагается что у вас уже развернут и настроен заббикс агент на сервере и проверено получение zabbix_get инфо с сервера.
Подключаемся на веб-интерфейс заббикса. Выбираем Настройка - Шаблоны - создать Шаблон.


Сохраняем шаблон и добавляем к нему Item-ы которые мы будем мониторить (item - значение нужного счетчика)
Например добавляем Свободную память ОЗУ.
Настройка элементов данных » Настройка шаблонов » Настройка групп элементов данных » Настройка шаблонов » Настройка элементов данных

Имя - Memory Available MBytes
Тип - zabbix агент
Ключ - perf_counter["\4\1382",300] - где \4\1382 - наш счетчик, 300 - период в сек за который получаем среднее значение.
Тип информации - числовой с плав точкой
Единица измерения - Mbytes


В принципе все. Счетчик добавлен в шаблон. Теперь нужно задать триггеры. Например можно задать такой
Настройка элементов данных » Поиск » Настройка шаблонов » Настройка элементов данных » Настройка триггеров

date

21.05.2020

directory

Windows Server 2016

comments

Один комментарий

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

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

Performance Monitor имеет огромное количество счётчиков для получения информации о железе, операционной системе, установленном ПО в виде конкретных цифр. 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

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

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

добавить счетик в perfmon

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

график производительности в perfmon

Например, вам нужно посмотреть загрузку процессора виртуальными машинами и самим 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

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

запустить сбор данных в perfomance monitor

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

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

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

создать alert в perfmon

Далее нужно зайти в свойства данной группы сбора информации, перейти на вкладку 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”.

Performance counter Time has tripped its alert threshold

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

привязка data collector set в perfmon к задаче в task Scheduler

вывод оповещения alert на экран при высокой загрузке cpu в perfmon

Для отправки письма вы можете воспользоваться командлетом 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"

Выпущена Windows 10 21H2, вот новые функции

Пользователи и администраторы Windows 10 сообщают о широкомасштабных проблемах сетевой печати после установки накопительного обновления KB5006670 и других обновлений, выпущенных на этой неделе.

Во вторник Microsoft выпустила обновления Windows для исправления ошибок и уязвимостей в рамках октябрьского вторника исправлений 2021 года.

Эти обновления включают KB5006674 для Windows 11, KB5006670 для Windows 10 2004, 20H1 и 21H1, KB5006667 для Windows 10 1909 и KB5006714 для Windows 8.

После установки обновления KB5006670 пользователи сообщают, что они не могут печатать на сетевых серверах печати, при этом некоторые пользователи получают ошибки 0x00000709 или « Элемент не найден » при попытке печати.

С июля Microsoft выпускает постоянный поток обновлений безопасности для исправления уязвимостей PrintNightmare в диспетчере очереди печати Windows.

Поскольку злоумышленники, в том числе банды программ-вымогателей , активно используют эти уязвимости, Microsoft радикально изменила свою функцию печати Point and Print. К сожалению, хотя эти изменения устраняют уязвимости, они также приводят к проблемам при печати на сетевых серверах печати.

На этой неделе Microsoft выпустила дополнительные обновления безопасности для уязвимостей печати Windows, которые отслеживаются как CVE-2021-41332 и CVE-2021-36970 , которые, вероятно, вызывают новые проблемы сетевой печати.

Хотя большинство сообщенных проблем связано с обновлением Windows 10 KB5006670, вероятно, это связано с тем, что в настоящее время это наиболее широко используемая версия Windows.

Такие же исправления безопасности также были выпущены для Windows 10 1909 и Windows 11 и, вероятно, вызовут аналогичные проблемы в этих версиях Windows.

Тема форума включает в себя многочисленные предложения от администраторов Windows, о том, как разрешить сетевую печать проблем , вызванные обновлением для Windows 10 KB5006670. К сожалению, поскольку эти предложения либо удаляют обновления безопасности, либо не всегда работают, они не идеальны для решения проблем.

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

Поскольку все эти изменения устраняют различные уязвимые аспекты диспетчера очереди печати Windows, они создают массу отдельных исправлений, которые администраторы Windows должны выяснить, исправят ли они свои проблемы с печатью.

Метод 1. Удалите обновление KB5006670.

Однако удаление обновления приведет к удалению исправлений безопасности для 74 уязвимостей , в том числе одной активно эксплуатируемой, что делает этот метод опасным.

Метод 2: замените C: \ Windows \ System32 \ Win32spl.dll

Другие обнаружили, что замена DLL-файла Win32spl.dll версией из обновлений от сентября 2021 года решит проблему сетевой печати.

Поскольку эта DLL, вероятно, была изменена как часть обновления безопасности, это также снизит защиту вашего компьютера от возможных будущих эксплойтов уязвимостей.

Метод 3: воссоздание очередей принтеров на серверах печати

Некоторые пользователи также сообщили, что удаление и повторная установка их принтеров на сервере печати решила их проблему.

Когда вы удалите принтер и снова установите его с правами администратора, очереди будут перестроены, что потенциально позволит снова работать печати.

Однако может потребоваться перенастройка рабочих станций для использования новой очереди печати, что может быть очень трудоемкой задачей для некоторых организаций.

Метод 4: снова включите функцию CopyFiles

Наконец, для некоторых драйверов принтеров HP требуется функция CopyFiles , которую Microsoft по умолчанию отключила в сентябре.

Для пользователей, которым все еще нужна эта функция, Microsoft представила скрытую групповую политику, которая позволяет вам снова включить ее.

Чтобы включить функцию CopyFiles, создайте значение реестра Windows в разделе HKLM\Software\Policies\Microsoft\Windows NT\Printers с именем CopyFilesPolicy . Если установлено значение «1», CopyFiles снова будет включен.

Читайте также: