Альтернативный способ сбора данных о проблемах с хранилищем версий в Exchange Server 2007

Оригинал статьи опубликован во вторник, 4 октября 2011 г.

Возможно, вы уже читали две предыдущих публикации по данной теме, написанных Нагешем Махадэвом (Nagesh Mahadev) и Сушил Шармой (Sushil Sharma). Если же вы их не читали (или не поместили в избранное), я настоятельно рекомендую сделать это.

В этой публикации планируется обсудить альтернативные способы сбора данных для Exchange Server 2007, а также метод настройки набора сборщиков данных на сбор данных о производительности для счетчика "Выделенных сегментов версий" и двух запланированных задач, чтобы создавать дамп хранилища, выполняющегося на Windows Server 2008.

В процессе сбора данных важную роль играет скрипт сбора данных о производительности Exchange 2007/2010, как описано в статье по адресу https://archive.msdn.microsoft.com/ExPerfwiz. Его нужно загрузить и запустить в соответствии с инструкциями, чтобы начать запись данных о производительности.

Ниже представлено событие с кодом 623, которое мы будем использовать в примере:

Источник: ESE
Код события: 623
Категория задач: диспетчер транзакций
Уровень: ошибка
Описание:
MSExchangeIS (5828) SG4: хранилище версий для этого экземпляра (1) достигло максимального размера (155 МБ). Скорее всего, долго выполняющаяся транзакция препятствует очистке хранилища версий и приводит к увеличению его размера. Обновления будут отклоняться до полной фиксации или отката этой транзакции.

Наша формула не изменилась: x/1024*32 = y, где "x" — число выделенных сегментов версий, а "y" — полный объем памяти хранилища версий. Итак, из приведенного выше события мы знаем, что максимальный объем памяти хранилища версий составляет 155 МБ, что дает возможность вычислить максимальное число выделенных сегментов версий. x = (155*1024)/32, что составляет 4960.

Здесь мы отклонимся от предыдущих публикаций. Будет получено только два дампа хранилища:

  • Один, когда выделение сегментов версий превышает 80 % от доступного объема.
  • Второй, когда запускается событие с кодом 623.

Наш первый шаг — настроить два пакетных файла. Один для создания дампа хранилища при срабатывании порога выделения сегментов версий и второй — события с кодом 623:

Содержимое файла VersionBucket.bat:

C:\procdump\procdump.exe store.exe -MA -accepteula c:\store.dmp  

Содержимое файла EventID623.bat:

C:\procdump\procdump.exe store.exe -MA -accepteula c:\store.dmp  

Теперь создадим пользовательский набор сборщиков данных с именем Version Buckets, который будет использоваться для запуска VersionBucket.bat. Обратите внимание, что приводимые здесь инструкции предназначены для Windows Server 2008. Если вы используете Windows Server 2003, см. инструкции по этой ссылке.

1. Откройте монитор производительности.

2. В разделе Наборы сборщиков данных щелкните правой кнопкой мыши элемент Пользовательские .

3. Задайте любое имя, например Version Buckets (Сегменты версий), выберите параметр Создать вручную (для опытных) и нажмите кнопку Далее .

Ver_Store_01

4. Выберите параметр Оповещение счетчика производительности и нажмите кнопку Далее .

clip_image003[4]

5. Щелкните Добавить . Выберите База данных MSExchange==>экземпляры как объект Производительность , затем в разделе Счетчики выберите Выделенных сегментов версий . Убедитесь, что только параметр SG4 выбран в разделе Экземпляры . Щелкните Добавить и затем Закрыть

clip_image005[4]

6. Задайте параметру Оповещение при значение Выше , а параметру Предел значение 3968 (4960*0,80) и нажмите кнопку Далее .

clip_image006[4]

7. Щелкните Запустить группу сборщиков данных сейчас и нажмите кнопку Готово .

 clip_image007[4]

Переходим к настройке двух запланированных задач для запуска пакетных файлов.

Создание запланированной задачи для выполнения дампа хранилища при срабатывании счетчика "Выделенных сегментов версий"

1. Запустите планировщик задач.

2. Выберите на панели действий команду Создать простую задачу .

3. Задайте любое имя, например Version Buckets (Сегменты версий) и нажмите кнопку Далее .

clip_image009[4]

4. Выберите параметр При записи определенного события в журнал и нажмите кнопку Далее .

5. Выберите Microsoft-Windows-Diagnosis-PLA/Operational для параметра Журнал .

Выберите Diagnosis-PLA для параметра Источник .

Введите 2031 для Код события и нажмите кнопку далее .

clip_image011[4]

6. Последовательно нажмите кнопки Запустить программу и Далее .

7. В разделе Программа или скрипт откройте папку с файлом VersionBucket.bat, и последовательно нажмите кнопки Далее и Готово .

clip_image013[4]

Создание запланированной задачи для выполнения дампа хранилища при возникновении события с кодом 623

1. Запустите планировщик задач.

2. Выберите на панели действий команду Создать простую задачу .

3. Задайте любое имя, например Event ID 623 (Событие с кодом 623) и нажмите кнопку Далее .

4. Выберите параметр При записи определенного события в журнал и нажмите кнопку Далее .

5. Выберите вариант Приложение для параметра Журнал . Выберите вариант Приложение для параметра Источник . Введите 623 для параметра Код события и нажмите кнопку Далее .

clip_image015[4]

6. Последовательно нажмите кнопки Запустить программу и Далее .

7. В разделе Программа или скрипт откройте папку с файлом EventID623.bat, и последовательно нажмите кнопки Далее и Готово .

clip_image017[4]

Отправьте в подразделение обслуживания и технической поддержки клиентов (CSS) файлы дампов, журнал приложения и журнал монитора производительности, выполнявшиеся во время сбора данных и записи дампа, для последующего анализа.

Благодарю Майка Эдвардса (Mike Edwards), Майкла Блэнтона (Michael Blanton) и Эрика Ромеро Родригеса (Eric Romero Rodriguez) за помощь в подготовке статьи.

Эйлин О'Рурк (Eileen O’Rourke)

Это локализованная запись блога. Исходная статья находится по ссылке Alternative Method for Gathering Data for Version Store Issues on Exchange Server 2007