Настройка счетчика производительности общей памяти завершилась ошибкой

  • Remove From My Forums
  • Question

  • We are using Microsoft SQL Server 2005 — 9.00.4035.00 on Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 2). Following is the error I am getting in my SQL Server Error Log:

    Error: 8319, Severity: 16, State: 1.
    Windows kernel object ‘GlobalSQL_90_MEMOBJ_Instance_0’ already exists. It’s not owned by the SQL Server service account. SQL Server performance counters are disabled.
    Error: 3409, Severity: 16, State: 1.
    Performance counter shared memory setup failed with error -1. Reinstall sqlctr.ini for this instance, and ensure that the instance login account has correct registry permissions.

    I have tried following steps:

    • Permission on Perflib/009 Registry Key to SQL Server Startup account..
    • Permission on Microsoft SQL Server folder to SQL Server Startup account.
    • SQL Server Startup account is part of all relevant Local Security Policies.
    • UnLodCtr & LodCtr.

    Just an observation that if I make SQL Server Startup account as a member of local administrator account then error gets resolved. So, it basically prompts me that I am missing some permission somewhere.

    I would appreciate if somebody can help me to resolve & understand more about this issue at the earliest.

    Thank you in advance.

Answers

  • Hi,

    This warning message happens when performance monitor client is running remotely or locally when SQL Service account was changed. We can safely ignore this warning message if the performance counters for SQL Server exist.

    If you have any more questions, please let me know.
    Thanks.


    ***Xiao Min Tan***Microsoft Online Community***

    • Marked as answer by

      Monday, July 26, 2010 5:47 AM

Содержание

  1. Счетчик производительности в диспетчере задач Windows Server 2012 / R2
  2. Мониторинг производительности Windows Server, настройка оповещений счетчиков PerfMon
  3. Мониторинг производительности процессора с Perfomance Monitor
  4. Группы сборщиков данных в PerfMon
  5. Создание Alert для мониторинга загрузки CPU
  6. Вручную восстанавливать счетчики производительности для систем Windows Server 2008 64 или Windows Server 2008 R2
  7. Симптомы
  8. Причина
  9. Решение
  10. Убедитесь, что счетчики не отключены в реестре
  11. Восстановление всех счетчиков производительности, включая раздвимые и сторонние счетчики

Счетчик производительности в диспетчере задач Windows Server 2012 / R2

Если сравнить между собой внешний вид диспетчера задач в Windows 8 (8.1) и в Windows Server 2012 (R2) можно заметить одну интересную особенность — в серверной версии Task Manager-а не отображается информация о производительности/загрузке дисковой подсистемы. В то же время в десктопной редакции Windows 8 эта информация есть:

Внешний вид вкладки Perfomance диспетчера задач в Windows Server 2012

Внешний вид вкладки Perfomance в Task Managere Windows 8

Дело в том, что разработчики Windows решили убрать информацию cо счетчиков производительности дисковой подсистему из Task Manager, объясняя это высокой нагрузкой на дисковую подсистему, вызываемую эти счетчиком, а для мониторинга дисковой подсистемы рекомендуют использовать Resource Monitor.

Однако в Windows Server 2012 существует возможность включить отображение счетчиков производительности дисков в диспетчере задач. Сделать это можно командой:

Перезапустите Task Manager и убедитесь, что на вкладке Perfomance появилась информация о скорости чтения/записи на диск (и).
Отключается функционал аналогично:

Мониторинг производительности 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, которое он затрачивает на выполнение пользовательских приложений.

Запустите 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:PerfLogsAdminCPU_Mon и имеет расширение .blg.

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

Создание 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 LogsMicrosoftWindowsDiagnosis-PLAOperational) появится запись:

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:ScriptsMailmailsend.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 — не запрашивать скрытую копию письма.

Вручную восстанавливать счетчики производительности для систем Windows Server 2008 64 или Windows Server 2008 R2

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

Оригинальная версия продукта: 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:windowssystem32PerfStringBackup.INI содержит соответствующую информацию. Этот файл можно скопировать с идентичной машины, чтобы восстановить счетчики. В этом файле могут быть небольшие различия между машиной и машиной. Но если вы заметите резкое различие в размерах, может не оказаться сведений. Всегда создайте копию резервного копирования перед заменой. Нет никакой гарантии, что копирование этого файла с другой машины восстановит все счетчики. Если это возможно, сравните файл с резервными копиями компьютера, чтобы узнать, уменьшился ли размер файла в определенный момент времени.

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

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

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

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

В этом примере попробуйте установить infoctrs.ini каждой папки с помощью:

После успешной работы вы увидите следующую запись в журнале приложений:

Вам нужно сделать то же самое для следующих счетчиков:

После чего вы увидите:

Следуя этим шагам, перезахоранить WINMGMT /RESYNCPERF .

Настройка счетчика производительности общей памяти завершилась ошибкой %1. Переустановите файл sqlctr.ini для этого экземпляра и убедитесь, что учетная запись входа экземпляра имеет необходимые разрешения на доступ к реестру.

Performance counter shared memory setup failed with error %1. Reinstall sqlctr.ini for this instance, and ensure that the instance login account has correct registry permissions.

Search by Google

Понравилась статья? Поделить с друзьями:
  • Настройка страницы для 404 ошибки
  • Настройка php для вывода ошибок
  • Настройка служб bluetooth ошибка подключения к гарнитуре
  • Настройка outlook для icloud ошибка
  • Настройка сети код ошибки 107