Специализированный программный комплекс «PERFEXPERT» – самостоятельный программный продукт, позволяющий без вмешательства в работу баз данных и обслуживающих их программ в режиме реального времени собирать, протоколировать и визуально отображать сведения о нагрузке на систему баз данных MS SQL, оценивать эффективность их работы и выявлять причины низкой производительности.

В начале лета разработчик этого программного продукта компания SOFTPOINT и производитель серверного оборудования компания STSS запустили акцию: при покупке любого сервера или СХД клиент получает Сертификат на бесплатное тестирование ПО диагностики СУБД PERFEXPERT сроком на 3 месяца. Акция продлится до конца лета.

Учитывая положительный результат акции, мы решили расширить круг её охвата. С сегодняшнего дня, в течение 3 месяцев, любой читатель этой статьи получает 2 недели тестирования PERFEXPERT в своей инфраструктуре СУБД.

Описание функционала


Далее представлены данные из официальных документов для PERFEXPERT версии 3.3. Так как продукт постоянно совершенствуется, через некоторое время актуальность данных из этой статьи может частично уменьшиться.

Общие сведения и принцип работы


Система мониторинга производительности и анализа баз данных PERFEXPERT позволяет с высокой степенью детализации получить полное представление обо всем, что сказывается на эффективности работы сервера SQL (в том числе серверов в группе доступности AlwaysOn и отказоустойчивых кластерах), серверов репликации, терминальных серверов и серверов приложений 1С.

Система имеет простое подключение к любым базам данных под управлением MS SQL Server начиная с версии 2005 и полностью интегрируется с большинством популярных информационных систем такими как: 1С: Предприятие, Microsoft DynamicsAX и DocsVision.
Большим достоинством PERFEXPERT является возможность одновременной работы с несколькими базами данных как в режиме on-line, так и последующей работы с архивными данными, накопленными за предыдущие периоды. При этом используется единая консоль управления и анализа для данных со всех серверов (узлов).

Кроме того, мониторинг PERFEXPERT позволяет анализировать статистику по всем собираемым источникам данных с максимальной детализацией, что делает возможным определять с высокой точностью проблемные модули, неоптимальные SQL-запросы, а также идентифицировать причины замедления работы серверов, как в плане настроек операционных систем, так и в плане настроек сервера MS SQL.

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

Используя собственные разработки ООО «Кластерные технологии Софтпоинт», PERFEXPERT, ведя круглосуточный (24x7) активный мониторинг событий на всех серверах одновременно, позволяет задействовать не более 3% ресурсов операционной системы при контроле информационных систем в режиме реального времени.

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

Функционирование комплекса основано на сборе и последующем анализе факторов, влияющих на качественные характеристики серверов, таких как: время отклика, пропускная способность, загруженность процессоров (в том числе, в разрезе каждой сессии MS SQL, отдельных групп запросов, баз данных), объёмы операций ввода-вывода и т.д.



В системе PERFEXPERT ведётся сбор трасс, настроенных по различным шаблонам:

  • по длительным запросам SQL
  • по запросам SQL, потребляющим значительные ресурсы памяти и диска
  • по блокировкам и взаимоблокировкам

В первую очередь программный комплекс PERFEXPERT производит анализ факторов:

  • динамика нагрузки на сервер в разрезе сессий MS SQL, БД, групп SQL-запросов
  • причины блокировок и взаимоблокировок с детализацией по объектам блокировок
  • нагрузка на вычислительную подсистему серверов
  • загруженность сетевой подсистемы
  • динамическое разделение ресурсов между сервером MS SQL и ОС
  • узкие места клиентской части
  • качество обслуживания баз данных

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

Интерфейс


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



Информация, отображаемая в данном окне приложения, позволяет наблюдать и оперативно информировать администратора СУБД о возникшей проблеме в режиме on-line. При этом наблюдение и анализ можно производить с различным уровнем детализации.

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

На панели управления отражается информация о подключённом сервере. Данный элемент управления позволяет переключаться между наблюдаемыми серверами баз данных. При этом потушенная иконка показывает, что агент сбора данных отключён, либо не проявляет активности более 20 секунд. Иконка синего цвета – указывает об активности агента.

Выпадающий список «Онлайн наблюдение» даёт возможность выбрать интервал времени наблюдений, отображаемый на графиках, отсчитывая с момента поступления последних данных.

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

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

При пересечении линейки с каждым из графиков отображаются значения соответствующих графиков. На панелях «Сессии MS SQL» «Дополнительная информация» и «ТОП 10 процессов» отображаются измерения на момент времени, выбранный курсором мыши на графике.

Для фиксирования таблиц с измерениями на панелях «Сессии MS SQL», «Дополнительная информация» и «ТОП 10 процессов» необходимо сделать двойной щелчок мышью по изображению графика. При этом появится новая закладка для выбранного момента времени.



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

Маркеры, выставляемые в конфигурации наблюдаемых информационных систем, при включении соответствующей панели в основном окне мониторинга позволяют визуально в онлайн-режиме определять «хорошие», «плохие», «отличные» по длительности операции в единицу времени
Вертикальная шкала панели маркеров отображает количество операций в единицу времени, горизонтальная является шкалой времени.



Опции из панели «Меню» позволяют эффективно управлять просмотром поступающей или записанной с серверов информацией, формировать статистику по собранным данным.



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

Далее, под спойлером, находится подробная инструкция по эксплуатации PERFEXPERT. Раскрывать его рекомендую, если Вы всерьёз задумались протестировать данную систему мониторинга и диагностики, или же уже приступили к её эксплуатации.

Для общего же знакомства с этим программным продуктом лучше воспользоваться 40-минутным обзорным видеороликом чуть ниже. Там описано и реальное применение, и описание функционала.

Описание каждого подменю программы

ПОДМЕНЮ «ФАЙЛ»


Основное предназначение подменю «Файл» — управление режимами работы Центра сбора данных, архивирование и восстановление из созданных ранее архивов баз данных мониторинга, быстрая навигация.



Опция «Открыть файл базы PerfExpert…» – выбор имеющегося в наличии записанного ранее файла с результатами наблюдения, имеющего расширение *.fdb или *.spdb.
Данная опция предназначена как для работы с архивными файлами PERFEXPERT, так и для ситуаций, когда нет возможности осуществить соединение с сервером посредством локальной сети. Например, файл базы данных получен из удалённого филиала по электронной почте.

Опция «Подключиться к удалённому Центру Сбора…» — создаёт подключение к серверу мониторинга. При её выборе возникнет окно, в котором необходимо указать сетевое имя компьютера или его IP-адрес, для установки удалённого подключения и, при удачном соединении, запросит имя пользователя, пароль доступа и порт по которому будет осуществляться обмен данными.





После удачного соединения опция поменяет название на «Отключиться от удалённого Центра Сбора…», выбрав которую пользователь возвращается к Центру сбора, расположенном на локальном компьютере.

Опция «Сделать BackUp…» позволяет сохранить собранные сведения наблюдаемой базы в файл (резервное копирование) и, при необходимости, добавить резервную копию в архив.

Система мониторинга создаёт новую базу каждый понедельник в час ночи, и в названии файла базы по умолчанию указываются: название домена и имени сервера, а также дата её создания (например, 2014-05-14-dbs.local_140512_234).

При выборе данной опции в открывшемся окне будет предложено выбрать вариант сохранения баз данных и откроются два поля:

  • «Архивируемый файл», т.е. файл базы, который будет заархивирован
  • «Файл резервной копии», т.е. сам файл BackUp — путь сохранения резервной копии



Если необходимо сделать резервную копию базы данных мониторинга PERFEXPERT за предыдущую или за текущую недели, то необходимо выбрать соответствующий пункт, и нажать кнопку «Упаковать». Через некоторое время файл резервной копии будет готов.
Если необходимо сделать копию базы за другой период, либо в случае истекшего срока действия лицензии, то необходимо действовать следующим образом:

  • Например, сегодня 07 августа 2017 г.
  • Для создания BackUp (резервной копии) базы за позапрошлую неделю необходимо в поле «Архивируемый файл» выбрать базу (это файл с расширением *.spbd) в названии которой указано %170724% т.е. 24 июля 2017 года, понедельник на позапрошлой неделе.
  • В поле «Файл резервной копии» указываем куда его сохранить. Нажимаем кнопку «Упаковать». Через некоторое время файл готов.
  • В результате выполнения процедур получается два файла с одинаковым названием, но разными расширениями — *.fbk и *.7z. Если в окне BackUp не включать опцию «Сжимать файл», то архивный файл с расширением *.7z создаваться не будет.

Опция «Восстановить BackUp…» обратная функция опции «Сделать BackUp…», которая позволяет восстановить из файла резервной копии собранные сведения наблюдаемой базы.
Восстановление происходит как из файла расширения *.7z, так и *.fbk. Распакованный файл будет иметь расширение *.spdb.

Опция «Задать каталог Базы Агента» позволяет установить локальный каталог, который будет использоваться агентами сбора данных для создания своих баз.



По умолчанию базы сбора находятся в папке, в которую была установлена система мониторинга, в поддиректории \data. Имя базы состоит из полного доменного имени наблюдаемого компьютера и имеет расширение *.fdb.

Опция «Выход» – завершение работы программы PERFEXPERT.

ПОДМЕНЮ «ПОДКЛЮЧЕНИЯ»


Подменю «Подключения» выводит список серверов MS SQL на которых установлены агенты сбора данных, подключённые к Центру сбора. Используется для переключения между несколькими подключёнными и работающими в режиме on-line серверами MS SQL, собирающими данные в едином Центре сбора.

ПОДМЕНЮ «ТРАССЫ»


В MS SQL нередки ситуации, когда определённый запрос работает медленно, причём по тексту запроса не видно никаких очевидных проблем. Обычно в этом случае необходимо расследовать проблему на более глубоком уровне.

Программный комплекс PERFEXPERT в процессе работы создаёт трассировки на стороне MS SQL сервера, в которые непрерывно ведётся запись стека выполняющихся запросов, отвечающих критериям по длительности выполнения более 5 секунд или выполнивших более 50 000 логических чтений, а также собирает события блокировок и взаимоблокировок.

Подменю «Трассы» служит для определения узких мест работы информационной системы в разрезе групп SQL-запросов и предназначено для создания и анализа результатов трассировок и выявления возникших проблем в процессе выполнения запросов.



Опция «Duration — запросы SQL длительностью более 5 сек.» — позволяет отобразить и проанализировать длительные SQL-запросы, являющиеся основным источником информации при исследовании повышенной нагрузки на вычислительную подсистему MS SQL сервера.
В результате в отдельном окне будут отражены списки длительных запросов, с возможностью просмотра текста выбранного запроса, а также получения статистических данных по группам запросов, создающих наибольшую суммарную нагрузку на сервер.





Вкладка «Статистика» позволяет сгруппировать запросы по различным их параметрам и оценить нагрузку, создаваемую запросами, например, в разрезе баз данных, пользовательских терминалов\сессий, типа запроса, модулей\форм\процедур информационной системы. Пользователь имеет возможность как самостоятельного выбора полей, по которым происходит группировка, так и использовать 3 наиболее востребованных шаблона группировки.

Опция «Reads — запросы SQL с количеством операций чтения более 50 000» — позволяет отобразить и проанализировать SQL-запросы, являющиеся основным источником информации при исследовании повышенной нагрузки на дисковый массив, проблем с кешем данных MS SQL сервера.

Опция «Writes — запросы SQL с количеством операций записи более 500» — позволяет отобразить и проанализировать SQL-запросы, нагружающие дисковую систему операциями записи.

Опция «Locks — события блокировок» — отображает произошедшие за время наблюдения блокировки, на уровне SQL и в первую очередь позволяет определить их вид, продолжительность, статус и ресурс блокировки.

Опция «Dead Locks — события взаимоблокировок» — отображает произошедшие за время наблюдения взаимоблокировки, когда транзакции блокируют друг друга и нарушают порядок доступа к объектам. Позволяет выяснить, если это возможно, причину взаимоблокировок, блокируемые и блокирующие сессии, проблемный запрос.

В полученной выборке в поле «Запрос» можно увидеть уведомление о произошедшей взаимоблокировке, описание потоков, которые попали во взаимоблокировки или граф взаимоблокировки, полный текст которого можно изучить во вкладке «Текст запроса».



Если данное графическое описание задач и ресурсов, вовлечённых во взаимоблокировку скопировать и сохранить в файл с расширением *.xdl, то открыв его в Microsoft SQL Management Studio можно наглядно просмотреть взаимоблокировку в графическом представлении.



Опция «Transactions — фиксация и откат транзакций» позволяет отобразить и проанализировать длительность завершённых и отката незавершённых транзакций. Вид окна данной опции имеет структуру, отличающуюся от большинства опций подменю «Трассы»



Опция «UserEvents — событие пользователя» — позволяет выявить запросы, создающие нагрузку на сервер событиями, которые созданы пользовательским кодом.

Опция «LogOut — завершение сеансов ИС» — отображает зафиксированные за время наблюдения принудительно либо аварийно завершённые сеансы подключений к базе данных.

Опция «Exceptions — исключительные ситуации SQL сервера» — отображает произошедшие за время наблюдения ошибки, которые делают невозможным дальнейшее выполнение команд SQL.

Опция «TextMask — отбор по подстройке в поле TextData» позволяет проанализировать все запросы, которые в тексте содержат подстроку из конфигуратора Агента сбора данных в поле Text mask.

Опция «Полная трасса» — позволяет ввести запись трассировки в режиме, при котором все запросы собираются без предварительной фильтрации. В настройках полной трассы можно задать такие ограничивающие факторы как максимальный размер файла трассы и максимальная длительность трассировки.

Включение полной трассировки оказывает значительную нагрузку на сервер SQL. Поэтому данную опцию целесообразно использовать, когда нужно определить запросы, не видимые в стандартных трассах: запросы менее 5 секунд (duration) либо запросы которые выполнили менее 50 тысяч логических чтений (reads).

ПОДМЕНЮ «НАСТРОЙКА»


В подменю «Настройка» пользователь имеет возможность настроить состав графиков, отображаемых в основном окне мониторинга, в том числе пользовательских SQLсчётчиков, а также пользовательские замеры (маркеры)

Опция «Настройка графиков» вызывает окно в котором можно выбрать отображаемый цвет графиков основного окна мониторинга. Двойной щелчок мышью по счётчику, которому необходимо изменить цвет, вызовет стандартное окно выбора цвета Windows. После внесённых изменений и нажатии кнопки «Применить» выбранные настройки будут применены.
Нажатие кнопки «Сохранить как шаблон» позволяет вернутся к выбранной цветовой настройке отображаемых счётчиков по нажатию кнопки «Использовать шаблон»

Опция «SQL — счётчики» позволяет создавать пользовательские SQL-счётчики, предназначенные для наблюдения за производительностью сервера MS SQL. При добавлении нового счётчика SQL, он через какое-то время автоматически появится в общем списке счётчиков, что будет означать, что сбор данного счётчика осуществляется корректно.

Опция «Настройки маркеров» позволяет настроить сбор и выбрать режим отображения значений маркеров (пользовательских замеров), вид графиков, их отображающих и цветовые настройки. Каждый пользовательский замер будет отображён в основном окне, под основной формой с обычными графиками, в виде трёхзонного графика.
Настройка маркеров производится во вкладке «Сбор маркеров» окна настройки маркеров

Для добавления маркера необходимо нажать на кнопку «Добавить» и заполнить все необходимые параметры маркера, после чего нажать на кнопку «Применить» для сохранения настроек.

Для временного отключения маркеров в поле «Активен» напротив выбранного замера, убирается соответствующий флажок.

При необходимости удаления пользовательского замера, в таблице выбирается маркер, подлежащий удалению, нажимается кнопка «Удалить» и далее, для подтверждения действия – кнопка «Применить».

Настройка параметров отображения маркеров в основном окне мониторинга, производится во вкладке «Отображение» окна настройки маркеров.



ПОДМЕНЮ «СТАТИСТИКА»


В подменю «Статистика» пользователь имеет возможность формировать статистические сведения по собранным данным, а также выводить их в виде отчётов.



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

Просмотр статистических сведений и анализ отчётов позволит своевременно и достоверно выявить самые ресурсоёмкие SQL-запросы позволит администратору сфокусироваться на оптимизации именно тех запросов, которые больше всего влияют на производительность базы данных.

Опция «Информация о сервере…» открывает окно просмотра подробной информации о наблюдаемом сервере баз данных.

Агент мониторинга обновляет информацию о сервере ежедневно в ночное время. В поле можно выбрать дату. В левой части окна показано дерево, позволяющее удобно просматривать настройки операционной системы, аппаратного обеспечения, параметры баз данных и настройки MS SQL сервера.





Опция «Сессии MS SQL» вызывает окно расчёта статистики по сессиям MS SQL. Это же опция вызывается кнопкой «Статистика», расположенной над панелью «Сессии MS SQL» основного окна мониторинга.
Предоставляет возможность сгруппировать нагружающие процессы по следующим значениям:

  • База данных
  • Модуль
  • Пользователь
  • Форма
  • Программа
  • Компьютер
  • День
  • Текст запроса
  • Пользователь Windows
  • Ресурс блокировки
  • Тип ожидания
  • Процедура
  • Строка кода

С помощью кнопки «Фильтры» есть возможность задать необходимые ограничения на формирующуюся статистику.

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

В меню, вызываемого правой кнопкой мыши, а также комбинацией клавиш «Ctl+А» и «Ctl+С», можно соответственно выделить все строки таблицы полученного результата либо скопировать выбранные строки результат в буфер обмена.

Опция «Графики» вызывает окно расчёта статистики счётчиков по графикам, отображаемым в основном окне мониторинга.

Сформированные с учётом заданного периода и рабочего времени статданные отражают усреднённые, максимальные и суммарные значения заданных счётчиков, с разбивкой по периодам: дни, часы.



Представленная таблица по вертикали также делится на 3 части:

  • Значения за весь заданный период с разбивкой по дням заданного периода
  • Значения каждого заданного дня с почасовой разбивкой по заданному периоду времени
  • Значения за весь выбранный период с почасовой разбивкой по заданному периоду времени

При изменении набора видимых графиков при вызове нового окна статистики по графикам набор счётчиков автоматически изменяется и соответствует графикам отображаемым в основном окне мониторинга.

Опция «Процессы» вызывает окно расчёта статистики данных нагрузки по запущенным процессам на серверах MS SQL, серверах приложений и терминальных серверах.
В данном окне рассчитывается и отображается доля нагрузки на ЦПУ, создаваемая процессами, запущенными на сервере баз данных, терминальных и серверах приложений с учётом заданного периода, и времени.

Опция «Статистика по таблицам» вызывает окно, в котором отображаются расширенные статистические сведения о таблицах баз данных и состоянии их статистик для определения регламента обслуживания баз данных.

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

В нижней части окна имеется 2 вкладки:

  • «Гистограмма», в которой внизу в виде графика представлены полные сведения по всем таблицам выбранной базы данных по выбранной базе данных, вверху гистограмма по первым 5 наиболее изменённым таблицам в выбранный момент времени на графике. На гистограмме зелёным цветом отображается количество изменений с прошлого замера, красным – количество изменений в таблице с момента последнего пересчёта статистик

  • «Статистика», в которой по каждой таблице имеется статистическая информация, показывающие распределение данных. В левой части вкладки в меню «Таблицы» выбирается исследуемая таблица, а в меню «Статистика» — статистика, по которой необходимо отследить количество изменений. В правой части вкладки представлены результаты измерений по выбранной таблице в разрезе статистик, в левой — график, показывающий количество строк, изменившихся с момента последнего пересчёта статистик





С помощью сведений данной опции можно оценить, насколько значительно изменились данные и насколько сильно устарела статистическая информация о распределении значений в индексах и таблицах, а также определить необходимость обновления статистик базы данных MS SQL для выравнивания производительности.

Опция «Статистика по индексам» вызывает окно, в котором отображаются сведения о состоянии индексов таблиц баз данных. Данная статистика является одной из ключевых при оценке эффективности обслуживания баз данных и принятии решения о перенастройке обслуживающих регламентных заданий. Так как опрос состояния индексов таблиц происходит периодически и циклично, то по данной статистике можно наблюдать деградацию или улучшение показателей в динамике.

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

В средней части окна отображаются сведения о таблицах, имеющихся в выбранной базе данных.

В нижней части окна находятся 3 вкладки:

  • Индексы, в котором показываются индексы выделенной таблицы в средней части окна
  • Измерения, где отражены сведения обо всех выполненных опросах информации по выбранной таблице в разный момент времени. Рекомендуется анализировать отображаемые в ней сведения без использования опции «Отображать только последнее измерение»
  • Исключения, где можно добавить и убрать исключаемые из опроса базы данных. При исключении базы данных из списка опрашиваемых, повышается общая скорость опроса таблиц. Данную опцию рекомендуется использовать всегда, исключая из списка все базы данных, по которым данная статистика не представляет интерес

Сведения, отражённые во вкладке «Индексы» позволяют определить степень внешней фрагментации индексов таблицы, которая выбрана в средней части окна. Данная вкладка имеет 5 колонок:

  • Дата измерения, где представлены дата и время опроса информации
  • Название индекса, где раскрываются имена индексов, используемых в выбранной таблице
  • ScanDensity показывает уровень фрагментации. При значении равном 100 фрагментация отсутствует
  • LogicalFragmentation показывает процент страниц не в логическом порядке. Если страницы находятся в строгой последовательности слева направо, то данный параметр будет иметь значение равное 0
  • ExtentFragmentation отображает процент экстентов не в логическом порядке. Если экстенты последовательны, то данный параметр будет иметь значение равное 0

Опция «Планы выполнения запросов» вызывает окно, в котором в табличной форме отображаются сведения по планам выполнения наиболее тяжёлых SQL-запросов, а также предоставляет возможность просмотреть этот план в графическом виде в Microsoft SQL Management Studio.

Зачастую в работе возникает ситуация, когда запрос в ИС по каким-то причинам работает медленно, но анализ текста запроса не выявляет какие-либо проблемы.
В таком случае приходится изучать эту проблему на более низком уровне. Для этого нужно проанализировать план выполнения запроса, который использовал SQL-сервер при его обработке.

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

Нажатие кнопки «Открыть план в MS Studio» позволяет просмотреть план выполнения в графическом виде в Microsoft SQL Management Studio.

Опция «Процедуры ИС» вызывает окно в котором отображаются сведения о длительности выполнения процедур информационной системы. Статистическая информация поступает с клиентских компьютеров, в on-line режиме, и показывает реальное время выполнения пользовательских операций.

В средней части окна расположена таблица с зафиксированными пользовательскими процедурами информационной системы, за выбранный интервал времени. На вкладке «Процедуры» – все процедуры ИС с учётом фильтров. На вкладке «Сообщения об ошибках» – только те процедуры, которые выполнились с ошибкой.

В нижней части окна находятся три вкладки:

  • Текст запросов в которой показаны запросы SQL, запущенные указанной процедурой ИС. При выделении в таблице SQL-запроса, в нижней табличной части отобразится его текст
  • Статистика, которая предназначена для анализа статистических данных, получаемых группировкой по определённым полям. Для анализа общей картины выполнения процедур информационных систем удобно использовать группировку по модулю и процедуре ИС. Для этого необходимо нажать кнопку «Группировка по модулю ИС и процедуре», потом кнопку «Рассчитать». Анализируя полученные показатели и сравнивая эту информацию за различные периоды, можно проследить динамику улучшения или ухудшения работы процедур
  • Гистограмма в которой отображается плотность распределения выполнения выбранной процедуры ИС в указанном временном интервале. Слева показана общие характеристики по выбранной процедуре ИС за указанный период. При этом в таблице выделяются все идентичные процедуры

Опция «Длительные строки конфигурации ИС» вызывает окно, в котором отображаются сведения о строках кода конфигурации информационной системы, выполнявшихся более 100 миллисекунд.

При анализе длительных строк кода информационных систем удобно использовать группировку по модулю и номеру строки кода ИС. Для этого необходимо нажать кнопку «Группировка по модулю ИС и номеру строки», затем кнопку «Рассчитать».

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

Подробный отчёт может быть выгружен либо в HTML, при этом откроется браузер, установленный в системе по умолчанию, либо в формате MS Office, если данный программный пакет установлен на том же компьютере, что и программа мониторинга PERFEXPERT.

Опция «Переиндексация базы» позволяет провести переиндексацию активной базы данных мониторинга. Эта опция применяется при частом использовании базы данных для расчётов, т.к. в этом случае индексы могут фрагментироваться, что существенно снижает быстродействие работы программы мониторинга.

ПОДМЕНЮ «ЛОГИ»


В процессе работы программного комплекса PERFEXPERT логируются все происходящие события работы агентов сбора данных и сервисов интеграции. В PERFEXPERT имеется возможность централизованного просмотра собранных логов от различных сервисов мониторинга. Данная возможность позволяет администратору оперативно реагировать на возникающие проблемы, в работе сервисов мониторинга.

В подменю «Логи» пользователь имеет возможность просмотреть не только логи сервисов мониторинга, но и журнал системных событий Windows, серверов баз данных и серверов приложений.

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

  • Менеджер (главный поток агента, отражающий запуск, остановку и контроль состояния рабочих потоков)
  • Счётчики (данные о счётчиках производительности)
  • Сессии MS SQL (информация о выполняющихся на сервере MS SQL процессах)
  • Трассы (контроллер по работе с трассами MS SQL)
  • Процедуры ИС (сведения о выполнении процедур встроенного языка программ ИС)
  • Процессы (данные о выполняющихся процессах в операционной системе)
  • Размеры таблиц (информация о размерах таблиц и индексов баз MS SQL)
  • Статистика линии (сведения о состоянии канала связи с сервером MS SQL)
  • Метаданные ИС (информация о метаданных конфигурации программного комплекса ИС)
  • Серверные процессы (информация о процессах, выполняющихся на наблюдаемом сервере)
  • Планы статистики (сведения о планах выполнения тяжёлых SQL-запросов)
  • Блокировки (информация о блокировках)

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

В правой части окна отражаются залогированые события. Выбрав соответствующую вкладку: «Ошибки» либо «Все события» имеется возможность отображения только ошибок или всех записей. Если пользователь выбрал просмотр всех записей в таблице ошибки будут отображаться жирным шрифтом красного цвета

Опция «Журналы событий Windows» вызывает окно, в котором имеется возможность просмотреть зарегистрированные ошибки из журнала событий операционной системы, произошедшие во время работы программы мониторинга.

В нижней части окна имеется возможность просмотра полного текста события на вкладке «Информация» и статистические сведения по различным показателям (пользователю, источнику, дате события) на вкладке «Статистика».

Опция «Журнал событий SQL-сервера» вызывает окно, в котором имеется возможность просмотреть зарегистрированные ошибки из самого SQL-сервера, произошедшие во время работы программы мониторинга.

ПОДМЕНЮ «ВИД»


Подменю «Вид» позволяет настраивать внешний вид главного окна программы мониторинга, даёт возможность отображать либо скрывать соответствующие панели.

Опция «Сессии MS SQL» вызывает одноимённую панель в правой части основного окна мониторинга и позволяет просматривать данные в табличном виде на момент времени, выбранный курсором мыши на графике.

Таблица «Сессии MS SQL» отображает значения, выбранные на линейке со значениями счётчиков (фиксированные и текущее) основными показателями из которых являются:

  • Активные пользователи в рассматриваемый момент времени. При этом имена пользователей отображаются только в случае выполнения операций, длящихся не менее 5 секунд, в остальных случаях они представлены в виде SPID
  • Создаваемую пользователями нагрузку на центральное процессорное устройство
  • Кто из пользователей создаёт блокировки и кто из них заблокирован
  • Каков тип блокировки и какие объекты заблокированы

Данная панель является оперативным вариантом окна статистики по сессиям MS SQL, которая вызывается как из подменю «Статистика», так и нажатием ссылки «Статистика» в правой верхней части панели.

Описание элементов отображаемого меню:

  • История пользователя – показывает все действия выбранного пользователя в хронологическом порядке
  • Копировать – копирование информации по текущей сессии пользователя в буфер обмена в табличном виде
  • Выделить всех – выделение всех сессий в таблице
  • Копировать запрос – копирование текста выделенного SQL-запроса пользователя в буфер обмена
  • Открыть запрос – отображение текста SQL-запроса пользователя в отдельном окне просмотра

Опция «ТОП 10 процессов» вызывает одноимённую панель в правой части основного окна мониторинга и отображающую информацию по 10 процессам Windows наиболее сильно нагружающим процессор.

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

Таблица «ТОП 10 процессов» отображает следующие значения, выбранные на линейке со значениями счётчиков (фиксированные и текущее):

  • Нагрузку процесса на центральное процессорное устройство (CPU)
  • Использование процессом оперативной памяти компьютера
  • Использование процессом виртуальной памяти компьютера
  • Пользователь запустивший процесс
  • Идентификатор процесса (PID)
  • Командную строку процесса

Кнопка «Статистика» в правой части позволяет увидеть нагрузку ЦПУ всех процессов, запущенных на сервере. Данная ссылка эквивалентна вызову окна «Доля программ в нагрузке» из подменю «Статистика».

Опция «Дополнительная информация» вызывает одноимённую панель в правой части основного окна мониторинга, отображающую информацию в 4 вкладках:
  • Управляемые блокировки
  • Рабочие процессы 1С
  • Маркеры
  • Активные sql – job

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

Опция «Выбор графиков» вызывает одноимённую панель в нижней части основного окна мониторинга под отображаемыми графиками. В данной панели имеется возможность самостоятельно включать или выключать графики в основном окне мониторинга.
Щелчок правой кнопки мыши в области выбора графиков либо на самих графиках, приводит к появлению контекстного меню:

  • Копировать – копирует изображение отображаемых в окне мониторинга графиков в буфер обмена
  • Экспорт списка счётчиков – сохраняет список активных графиков в файл с расширением *.xml
  • Импорт списка счётчиков – восстанавливает из ранее сохранённого файла с расширением *.xml список активных графиков, и в соответствии с ним отображает активные графики в основном окне мониторинга
  • Отметить все счётчики – отмечает все счётчики из представленного списка и отображает их в окне мониторинга
  • Снять отметку со всех счётчиков – снимает отметки и делает неактивными все счётчики из списка
  • Режим дерева – представляет вид выбора счётчиков, сгруппированных по общему признаку в виде древовидной структуры (вкл.) либо в виде списка (выкл.) (Рисунок 67). Кроме того, если выбрана древовидная структура, у пользователя появляется возможность самостоятельно изменять группировку счётчиков путём их переноса с помощью мыши, удерживая нажатой левую кнопку в процессе переноса (функция Drug-n-Drop)
  • Сброс иерархии дерева – появляется только во включенном режиме дерева приводя вид древовидной структуры по умолчанию, отменяя все пользовательские изменения отображения счётчиков (включения, выключения и перегруппировку)

Опция «Сохранить вид» сохраняет настройки стартового вида основного окна мониторинга, которое будет отображаться при запуске программы PerfExpert Center.

Опция «Формы на панели задач» позволяет переключать режим видимости открытых форм и отчётов мониторинга на панели задач экрана OC Windows.

При включении этой опции все новые открытые формы будут на нижней панели задач экрана Windows как отдельные приложения. Если опция выключена – то на панели задач будет видно только одно окно (иконка).

ПОДМЕНЮ «ОКНА»


В подменю «Окна» пользователь имеет возможность упорядочить все открытые в процессе работы окна либо закрыть их.
При этом основное окно мониторинга остаётся неизменным.


Составление отчётов PERFEXPERT
Отчёты мониторинга PERFEXPERT являются важной частью анализа производительности системы путём экспертной оценки значений счётчиков производительности.

Они формируются по итогам собранных статистических данных о работе информационной системы в целом, на протяжении длительного интервала времени, что при тщательном изучении позволяет достоверно выявить конкретные проблемные места и причины их возникновения.
Для выбора отчёта в подменю «Статистика» выберите опцию «Отчёты». Откроется окно со списком доступных отчётов, по умолчанию составляемых по открытой или активной базе данных, имя которой отражено в поле «Файл». Выбор другой базы данных происходит по нажатии кнопки «Открыть».

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

Подробные отчёты по блокировкам, взаимоблокировкам, управляемым блокировкам могут выгружаться как в HTML, при этом откроется браузер, установленный в системе по умолчанию, так и в формате MS Office если данный программный пакет установлен на том же компьютере, что и программа мониторинга PERFEXPERT.

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

ОТЧЁТЫ ПО БЛОКИРОВКАМ И ВЗАИМОБЛОКИРОВКАМ


Аналитические отчёты по блокировкам отображают подробную статистическую информацию за выбранный период времени, согласно заданным условиям.

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

Окна отчётов по блокировкам и взаимоблокировкам условно делятся на три части:

  • Выбор параметров и фильтров отображения сведений (верхняя часть)
  • Секция «База» (средняя часть) отображает таблицу со списком доступных для анализа баз данных и информацией по блокировкам для каждой базы. В нём выбираются базы, данные из которых будут участвовать в построении отчёта
  • Секция «Блокировки для выбранных баз» отображает таблицу с информацией по блокировкам для отмеченных баз по дням. Для формирования отчёта необходимо нажать на кнопку «Отчёт [HTML]» или «Отчёт [Word]»

ОТЧЁТ ПО ОБЪЕКТАМ, НАГРУЖАЮЩИМ СЕРВЕР


Данный отчёт детализирует и в графическом виде отображает распределение общей нагрузки сервера в разрезе конкретных объектов анализа.

В верхней части окна находятся настройки параметров отчёта – период (дата), время и объект анализа. С помощью выпадающего списка «Объект анализа» можно выбрать один из следующих типов объектов:

  • Пользователь ИС
  • Пользователь Windows
  • Имя компьютера
  • Приложение
  • Модуль ИС
  • Форма ИС

После выбора типа объекта и нажатия кнопки «Применить», расположенной справа от выпадающего списка, отчёт обновится в соответствии с изменёнными параметрами.
В средней части окна находится список доступных для анализа объектов в соответствии с выбранным типом. Для каждого объекта указана доля его нагрузки и цветовая шкала, где также с помощью гистограмм наглядно отображающая нагрузку каждого объекта на сервер за выбранный период.

Нажатие правой кнопки мыши вызовет контекстное меню, с помощью которого можно будет выделить либо отменить выделение всех объектов, инвертировать выбранные объекты, а также скопировать сведения по объекту из таблицы в буфер обмена.

В нижней части окна графически показано распределение нагрузки сервера выбранных объектов за выбранный период с почасовой разбивкой на каждый день. Для того, чтобы показать или скрыть график какого-либо объекта, нужно установить либо снять напротив него флажок в таблице объектов, расположенной над графиком. Нажатие правой кнопки мыши вызовет контекстное меню, с помощью которого можно будет скопировать диаграмму в графическом виде в буфер обмена.

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

ЭКСПЕРТНАЯ ОЦЕНКА ЗНАЧЕНИЙ СЧЁТЧИКОВ ПРОИЗВОДИТЕЛЬНОСТИ


Данный отчёт обобщает собранные данные по счётчикам производительности и представляет их в наглядном графическом виде (помесячно в календарном виде) с использованием цветовой оценки распределения нагрузки по времени для одного из пяти выбранных параметров:

  • Процессор
  • Оперативная память
  • Дисковая подсистема
  • Блокировки
  • Внутренние показатели MS SQL

Представленный расчёт за выбранный период отображается в двух видах, которые переключаются вкладками «Общий график» и «Подробно».
На вкладке «Общий график» показано цветовое распределение нагрузки за месяц по дням, расшифровка которого представлена в нижней части окна. На вкладке «Подробно» показано цветовое распределение нагрузки за день. На вкладку «Подробно» можно переключиться также нажатием на квадрате общего графика с интересующим вас днём.



ОСНОВНЫЕ СТАТИСТИЧЕСКИЕ ДАННЫЕ


Данный вид отчёта позволяет сформировать и отобразить в типовом табличном виде отсортированные по степени загрузки системы наиболее распространённые ситуации.
После выбора периода и диапазона рабочих часов пользователь имеет возможность рассчитать и отобразить информацию по следующим группам данных:

  • Нагрузка на память/диск в разрезе пользователей информационной системы и по 20 наиболее нагружающим пользователям
  • Нагрузка на процессор в разрезе пользователей информационной системы и по 20 наиболее нагружающим пользователям
  • Нагрузка на память/диск в разрезе строк кода конфигурации информационной системы и по 20 наиболее нагружающим строкам
  • Статистика по времени проведения операций
  • Статистика по времени формирования стандартных отчётов
  • Статистика нагрузки на сервер в разрезе приложений
  • ТОП 20 строк конфигурации, имеющих наибольшую долю в суммарной нагрузке на центральное процессорное устройство
  • ТОП 20 запросов, имеющих наибольшую длительность
  • ТОП 20 запросов, создававших наибольшую нагрузку на процессор
  • ТОП 20 запросов, имеющих наибольшее количество логических чтений


Стандартные методы поиска узких мест в системе
Для контроля ситуации в системе, принятия своевременных решений, таких как: быстрое отключение пользователя системы, создавшего серьёзную нагрузку в системе и мешающего другим работающим пользователям, или сигнала администраторам о запуске неконтролируемого процесса необходимо правильно и оперативно отслеживать информацию, максимально задействовав все имеющиеся инструменты, представляемые программой мониторинга.
Результатом поиска проблем в системе являются чёткие выводы о недоступности того или иного ресурса с обоснованиями, выделение из общего числа запросов к серверу баз данных списка наиболее «тяжёлых», модуль их вызова и строку кода прикладного приложения с ориентировочным вкладом в нагрузку системы.

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

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

ИСПОЛЬЗОВАНИЕ СТАТИСТИКИ И АНАЛИЗА ВЫБОРОК ДАННЫХ


После того, как ваш сервер отработал некоторое время, у него могут возникнуть проблемы, связанные с ухудшением производительности. Условия, в которых работает сервер, обычно динамически изменяются, поэтому для выявления и последующего выбора метода устранения создавшихся проблем, необходимо собрать данные в течение некоторого времени, чтобы отследить состояние сервера и выявить узкие места в его функционировании.
Существует пять потенциально проблемных мест сервера, где вероятность возникновения проблем наиболее высокая:

  • Процессор
  • Память
  • Дисковая подсистема
  • Загруженность сети
  • Блокировки

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

Для определения узких мест сервера прежде всего необходимо визуально, используя линейки счётчиков (фиксированные и текущую) анализировать графики мониторинга с учётом фильтра. Если в основном окне мониторинга не показаны требуемые вам графики, нажмите кнопку «Выбор графиков» и настройте отображение графиков.

Указанные выше проблемные места сервера представлены следующими видами графиков, которые изучаются и анализируются в первую очередь:

  1. График Server: Нагрузка CPU. На этом графике отображается общая нагрузка на центральное процессорное устройство.
    Если долгое время (от 10 минут) нагрузка на CPU составляет 80-100% то скорее всего нужно начать анализировать сведения о процессах, его нагружающих.


  2. График Server: Средняя длина очереди к диску. Если долгое время (от 1-2 минут) средняя длина очереди к диску превышает значение 4-8, необходимо первым делом установить её причину. В большинстве случаев это может быть нехватка оперативной памяти, которая может быть обусловлена выполнением тяжёлых запросов или, например, высокая загруженность дисковой подсистемы сторонними процессами.


  3. График Server: Свободная оперативная память (Мб). Потенциально узким местом может быть память, если долгое время свободной оперативной памяти менее 1 Гб
  4. График SQL (Name): Ожидаемый срок жизни страницы памяти. Потенциально узким местом может быть память, если долгое время ожидаемый срок жизни страницы памяти менее 300 с
  5. График SQL (Name): Блокировки, SQL (Name): Суммарное время блокировок…

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

Блокировка — это механизм, с помощью которого синхронизируется одновременный доступ нескольких пользователей к одному фрагменту данных.

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

Для анализа необходимо использовать графики количества блокировок и времени ожидания на блокировках.

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

На панели Сессии MSSQL показано дерево блокировок. Иерархия представлена следующим образом: родительский процесс – тот, кто блокирует; дочерний процесс – тот, кого блокируют. С помощью дерева блокировок можно оперативно принимать решения об отключении блокирующих пользователей.

После определения потенциально узких мест сервера необходимо провести анализ статистики процессов на панели «ТОП 10 процессов» на предмет наличия дополнительных процессов, нагружающих процессор и память – антивирус, архивация и т.п.

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

АНАЛИЗ ТРАСС MS SQL


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

К данному анализу целесообразно переходить после визуального исследования графиков в основном окне мониторинга. В зависимости от обнаруженных проблем, изучаются трассы Reads (если проблемы с очередями к дискам или памятью) или Duration (если проблемы с повышенной нагрузкой на процессор), окно отображения которых вызываются в подменю «Трассы» мониторинга одноимёнными опциями: «Duration» (время выполнения запросов), либо «Reads» (число чтений).

В окне анализа трасс задаётся фильтр по времени и диапазон рабочих часов, в зависимости от анализируемого участка. Нажатие кнопки «Применить фильтр» проведёт отбор данных в зависимости от настроек фильтра.

Группировка по модулю информационной системы и номеру строки во вкладке «Статистика», либо применение пользовательских фильтров в группе «Сгруппировать по полям» сформирует выборку, необходимую для анализа.

Отсортировав таблицу по столбцу «%доля CPU», либо «%доля чтения» определяются конструкции, внёсшие наибольший вклад в нагрузку центрального процессорного устройства или создающие наибольшее количество чтений.

Целесообразно рассматривать только первые 3 – 8 записей, доля которых не превышает 3 – 5%.
Двойное нажатие по выбранной записи, позволяет видеть и анализировать запросы в центральной части окна анализа трасс. Отсортировав по столбцам «Длительность», «Чтений» и «Процессорное время», имеется возможность выявить наиболее «тяжёлые» запросы.

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

Для некоторых информационных систем (1С и т.п.) имеется возможность сопоставления SQL-запросов со специфичными именами внутренних объектов информационной системы, что дополняет стандартную SQL-информацию сведениями о модуле и строке кода конфигурации, которые могут быть использованы разработчиками ИС для их оптимизации.

ИСПОЛЬЗОВАНИЕ ПОЛЬЗОВАТЕЛЬСКИХ ЗАМЕРОВ В АНАЛИЗЕ ПРОИЗВОДИТЕЛЬНОСТИ


Создание и использование в оценке работы информационной системы пользовательских замеров (маркеров) позволяет оценить временные затраты конкретных операций либо участков кода, на которые ранее была произведена их настройка и параметры отображения значений опцией «Настройки маркеров» в подменю «Настройка».



Результаты замеров отображаются на основном окне мониторинга под основной формой с обычными графиками, в виде трёхзонного графика и конкретизируются в табличной форме во вкладке «Маркеры» панели «Дополнительная информация».

Учитывая, что сведения о текущих данных пользовательских замеров соответствуют текущим временным характеристикам под основной линейкой графиков, пользователь имеет возможность сопоставить результаты замеров с остальными значениями графиков и определить причины замедления: нехватка оперативной памяти, очередь к дискам, повышенная нагрузка на центральное процессорное устройство и т.д. Фиксация значений линейки даёт возможность детального изучения полученных данных в соответствующих таблицах.

В представленном на рисунках 83 и 84 примере, пользовательский замер «ЛюбоеНазваниеМаркера» настроен на диапазон значений от 1,5 до 3,0 секунды, т.е. временные затраты до 1,5 секунд будут отображаться зелёным цветом (по умолчанию), попадающие в заданный промежуток времени – жёлтым и превышающие 3,0 секунды – красным. На шкале маркеров при наведении на линейки через дробь соответственно отображаются красные/жёлтые/зелёные маркеры (в данном примере: 3/4/1). При использовании панели «Дополнительная информация» расположенной справа в основном окне мониторинга (подключается в подменю «Вид»), можно подробно изучить полученные значения.

ИСПОЛЬЗОВАНИЕ СТАТИСТИЧЕСКИХ СВЕДЕНИЙ ПО ТАБЛИЦАМ И ИНДЕКСАМ


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

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

MS SQL Server не сможет выполнять запросы за разумное время, если в базах данных имеются следующие проблемы:

  • Индексы становятся сильно фрагментированными
  • Часть данных на строках, когда-то участвовавших в индексе уже удалена, и из-за этого индекс занимает на диске больше места и требует при выполнении запросов больше операций ввода-вывода
  • Статистика таблиц становится существенно неточной, причём это выясняется сервером именно в тот момент, когда она нужна

Как правило, качество обслуживания индексов отслеживается по заданиям на перестроение/реорганизацию индексов по расписанию, однако данная оценка не всегда достоверна, так как скрипт может работать неправильно, в нем могут быть не учтены новые таблицы и индексы.
Более точную оценку степени фрагментированности индексов даёт параметр ScanDensity.
В PERFEXPERT для определения данного параметра используется окно статистики по индексам, которое открывается соответствующей опцией подменю «Статистика». С помощью этого окна можно определить какие индексы требуют дополнительного обслуживания, оценить насколько эффективно они поддерживаются, в каком состоянии находятся.

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

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

Scan Density показывает процент идеальности размещения страниц. Чем ближе результат к 100%, тем меньше фрагментация. В представленном примере заметно, что эта таблица довольно сильно фрагментирована. Сканирование постоянно использует переключение вперёд и назад от одного экстента к другому, вместо использования только ссылки одной страницы на следующую в пределах экстента.

Как правило, дефрагментация индекса путём его реорганизации целесообразна при значении Scan Density от 95% до 85%, перестройки – менее 85%.

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

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

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

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

С помощью окна «Статистика по таблицам» можно определить, насколько большое изменение данных произошло и насколько сильно устарели статистики. Это позволит понять необходимость обновления статистик для выравнивания производительности.

Во вкладке «Гистограмма» внизу окна показан график, который показывает общее число изменений по всем таблицам выбранной базы данных. Вверху окна расположена гистограмма по первым 5 наиболее изменённым таблицам.

Для определения значений 5 этих таблиц на графике в определённый момент времени используется линейка – прямая вертикальная линия, которая появляется при движении курсора мыши по окну графика.

При этом в статистике «ТОП 5» зелёным цветом показано количество текущих изменений на выбранный момент времени (изменений с момента прошлого опроса статистик), красным – число накопительных изменений (изменений с момента прошлого обновления статистики по этим таблицам).



Во вкладке «Статистика» имеется информация по каждой таблице по каждой статистики. В «Таблицы» выбирается таблица, в «Статистика» — статистика по которой необходимо отследить изменения (посмотреть количество изменений). Статистические данные для индексированных столбцов получают названия по названию соответствующего индекса, а статистические данные с именами, которые начинаются с WA_Sys — это статистика, которую SQL Server создаёт автоматически для столбцов, не имеющих индекса.

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

В таблице, в соответствующих столбцах, отражены сведения о:

  • Наименовании статистических данных для индексированных столбцов
  • Времени последнего пересчёта статистик
  • Количестве изменений с последнего пересчёта статистик
  • Количестве изменений за последние 10 минут
  • Дате и времени произведённого замера

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

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

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

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

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

Программные опции мониторинга, используемые только с платформами 1С
В России система мониторинга PERFEXPERT много лет успешно используется для решения проблем производительности и оптимизации платформ 1С: Предприятие, являясь альтернативой 1С: ЦУП (Центр управления производительностью) входящего в корпоративный инструментальный пакет (1С КИП), имея при этом более широкие возможности по наблюдению за производительностью без вмешательства в работу самой программы и без отвлечения для этого персонала.

PERFEXPERT сертифицирована фирмой-разработчиком ООО «1С» и имеет полную совместимость с 1С: Предприятие.



Представленные в данном разделе опции отражают сведения специфичные для работы систем 1С.

УПРАВЛЯЕМЫЕ БЛОКИРОВКИ И ДРУГИЕ СПЕЦИАЛЬНЫЕ ОПЦИИ, ИСПОЛЬЗУЕМЫЕ ТОЛЬКО ПРИ ИНТЕГРАЦИИ С 1С


В 1С: Предприятии версии 8.1 и выше реализован дополнительный режим работы, позволяющий использовать собственный менеджер транзакционных блокировок, независимый от используемой СУБД.

При работе в этом режиме система использует гораздо более низкий уровень изоляции транзакций для MS SQL Server. Однако этот уровень изоляции транзакций СУБД уже не может сам по себе обеспечить целостность и непротиворечивость данных во всех случаях. Поэтому системы 1С при модификации данных методами встроенного языка устанавливает собственные управляемые блокировки в транзакции, которые обрабатываются собственным менеджером транзакционных блокировок.

Управляемые блокировки учитывают логическую структуру прикладного решения поэтому позволяют максимально точно блокировать необходимые области данных (в отличие от использовавшихся ранее блокировок СУБД, которым не известна логическая структура системы).

Опция «Управляемые блокировки» находится в подменю «Статистика» и вызывает окно в котором в табличной форме отображаются сведения об имевших место установленных управляемых блокировках в 1С минуя данные технологического журнала.

Опция «Управляемые блокировки (из ТЖ)» находится в подменю «Статистика» и вызывает окно в котором в табличной форме отображаются сведения об имевших место блокировках и взаимоблокировках установленных управляемых блокировках в 1С путём анализа информации полученной от технологического журнала.

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

При интеграции системы мониторинга с программными продуктами 1С: Предприятие панель «Дополнительная информация» дополняется двумя вкладками:

  • Управляемые блокировки – отображающей дерево управляемых блокировок программы 1С, а также наиболее значимые сведения о них.
  • Рабочие процессы 1С – отображающей дерево пользователей по процессам rphost в кластере программы 1С и сведения о них.

Сбор и обновление представленных в панели данных (срез) осуществляется мониторингом с частотой 1 раз в 10 секунд.

Вкладка панели «Управляемые блокировки» является удобной альтернативой консоли администрирования 1С Предприятие, позволяющей в режиме реального времени наглядно и оперативно установить блокирующих друг друга пользователей.

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

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

Вкладка панели «Рабочие процессы 1С» также позволяет в режиме реального времени получить сведения, представленные в древовидной форме, о пользователях, находящихся на каждом rphost.

В таблице вкладки имеется возможность увидеть какие операции и с какой нагрузкой выполнялись пользователями рабочих процессов. В результате можно отследить потребление rphost (на графике потребления) и установить пользователя с максимальной нагрузкой. В большинстве случаев это позволяет выявить причину падения rphost или значительного уровня употребления оперативной памяти, что даёт возможность детально проанализировать причины утечек памяти на сервере приложения 1С.

Корреляция сведений с данными графиками, например, по потреблению памяти, по потреблению ресурсов ЦПУ, количеству сеансов на каждом рабочем процессе и других задач, позволяет установить причину аномального поведения rphost, провести анализ причин в разрезе пользователя и функционала.

ЛОГИ СЕРВИСА ИНТЕГРАЦИИ


В процессе работы комплекса PERFEXPERT с 1С: Предприятие версии 8.х помимо событий работы агентов сбора данных логируются и события связанные с сервисом интеграции.

Опция «Логи сервиса интеграции» подменю «Логи» используется только если установлен сервис интеграции сервера приложений 1С, позволяя просмотреть залогированные им события.
При этом вид окна и работа с ним аналогичны опции «Логи агента данных» подменю «Логи».

ОТЧЁТ ПО УПРАВЛЯЕМЫМ БЛОКИРОВКАМ


Данный отчёт находится в подменю «Статистика» опции «Отчёты».
Аналитический отчёт по управляемым блокировкам отображает подробную статистическую информацию за выбранный период времени, согласно заданным условиям (верхняя часть окна).
В нижней части окна отображаются сведения, сгруппированные по различным параметрам, переключаться на которые можно выбрав соответствующую вкладку:

  • Статистика, в которой отображается основная общая статистическая информация о блокировках
  • Сводный, в которой в табличной форме отображается информация о: Дате, Количестве блокировок, Количество безуспешных блокировок, Время ожидания, Время ожидания в безуспешных блокировках
  • Пользователях (всего), в которой в табличной форме отображаются сведения о: Пользователе, Количестве блокировок, Блокировках с ошибкой, Ожиданиях, Безуспешных ожиданиях
  • Объектах (всего), в которой в табличной форме отображаются сведения о: Объектах, Количестве блокировок, Блокировках с ошибкой, Ожиданиях, Безуспешных ожиданиях
  • Пользователях (по дням), в которой в табличной форме отображаются сведения о: Дате, Пользователе, Количестве блокировок, Количество безуспешных блокировок, Время ожидания, Время ожидания в безуспешных блокировках
  • Объектах (по дням), в которой в табличной форме отображаются сведения о: Объектах, Количестве блокировок (всего), Количество безуспешных блокировок, Время ожидания, Время ожидания в безуспешных блокировках



Руководство по установке/удалению и настройке PERFEXPERT 3.0

ОПИСАНИЕ СТРУКТУРЫ ПРОГРАММНОГО КОМПЛЕКСА PERFEXPERT


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

Система мониторинга производительности PERFEXPERT версии 3.0 состоит из следующих частей:

  • Центр сбора данных – терминал, где агент сбора данных сохраняет собранную информацию
  • Агент сбора данных – служба для сбора данных производительности с MS SQL сервера
  • Сервис сбора терминальных счётчиков и запущенных процессов – служба собирающая основные счётчики на серверах терминалов для поиска проблемных мест в оборудовании при работе большого количества пользователей

ЦЕНТР СБОРА ДАННЫХ


Центр сбора данных представляет собой выделенный компьютер (обычный ПК), на котором будут сохраняться данные.
Решающий критерий для выбора ПЭВМ в качестве центра сбора – это непрерывная и постоянная (24 часа) стабильная связь с машиной MS SQL сервера.

В качестве центра сбора не рекомендуется использовать непосредственно сервер баз данных. Дополнительное требование к центру сбора – это достаточное количество свободного места на жёстком диске. В среднем объём записанных центром данных составляет от 1 до 5 ГБ в неделю.
На компьютере, используемом как Центр сбора данных, из пакета установки запускаются два инсталлятора: первым устанавливается программа FirebirdServer – свободная система управления базами данных, используемая для хранения собираемой статистики агентами сбора данных. Данная программа сохраняет в открытом виде базы данных, собранных для последующего анализа сведений.

Затем на этот же компьютер для отображения результатов мониторинга устанавливается программа PerfExpertCenterSetup которая является центральной консолью, обеспечивающей просмотр и анализ консолидированной статистики по всем базам данных с одного или нескольких серверов СУБД.
Рекомендуемый объем оперативной памяти, который необходим для комфортного просмотра собранных данных мониторинга – не менее 2 Гб.

Установка указанных программ не требует остановки работы пользователей информационных систем (ИС), и может быть выполнена в любое время.

АГЕНТ СБОРА ДАННЫХ


Агент сбора данных является неотъемлемой частью сервиса мониторинга. Данная служба собирает данные о производительности MS SQL сервера и сохраняет их на Центре сбора данных. Эта программа – базовая в мониторинге, она также отвечает за поступление информации в центр сбора от других сервисов мониторинга (сервис сбора терминальных счётчиков, сервис интеграции).

Агентом в пакете установки является программа PerfAgentSetup, которая инсталлируется на компьютере, где установлены MS SQL сервера, по которым необходимо производить мониторинг.
Установка Агента сбора данных также не требует остановки работы пользователей ИС.

СЕРВИС СБОРА ТЕРМИНАЛЬНЫХ СЧЁТЧИКОВ И ЗАПУЩЕННЫХ ПРОЦЕССОВ (ПРИ НАЛИЧИИ ТЕРМИНАЛЬНЫХ СЕРВЕРОВ)


Сервис сбора терминальных счётчиков и запущенных процессов необходим для сбора счётчиков производительности операционной системы Windows на терминальных серверах. Данный сервис позволяет найти узкие места в функционировании терминальный серверов.

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

СОСТАВ ИНСТАЛЛЯЦИОННОГО ПАКЕТА PERFEXPERT


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



В состав установочного пакета PERFEXPERT версии 3.0, в каждую из 6 директорий, входят следующие файлы (буква х – цифровые значения номеров версий продукта):

  • Firebird-2.5.х.х win32.exe и Firebird2.5.х.х_x64.ехе
  • PerfExpertCenterSetup_3.0.х.х.exe
  • PerfAgentSetup_3.0.х.х.exe
  • IntegrationService_3.0.х.х.exe
  • библиотеки и файлы конфигурации для внешней компоненты приложения 1С и текстовые файлы с кодами процедуры загрузки мониторинга под различные версии программы 1С
  • CounterService_1.0.х.х.exe и readme.txt


СИСТЕМНЫЕ ТРЕБОВАНИЯ


Сервера баз данных, приложений, терминалов, WEB-сервера


Совместимость:

  • MS Windows Server 2003 SP2 и выше
  • MS SQL Server 2000 и выше

Аппаратные требования:

  • CPU 4 ядра
  • RAM 16 Гб
  • Ethernet 100 Мбит/сек

Центр сбора данных мониторинга


Совместимость:

  • MS Windows Server 2003 SP2 и выше
  • MS Windows ХР SP3 и выше

Аппаратные требования:

  • CPU 2 ядра, с частотой 1 Ггц и выше
  • RAM 2 Гб и выше
  • HDD не менее 50 Гб свободного пространства для хранения баз данных мониторинга PERFEXPERT

УСТАНОВКА ПРОГРАММНОГО КОМПЛЕКСА PERFEXPERT


Инсталляция Firebird, центра сбора данных, агентов сбора данных и сервиса сбора счётчиков не требует остановки работы пользователей и могут быть выполнены в любое время.
Все действия по установке программного комплекса PERFEXPERT необходимо производить от имени Администратора.

УСТАНОВКА FIREBIRD SERVER


Firebird Server 2.5 устанавливается на компьютере, который будет центром сбора. Для этого из директория «1. Установить FireBird 2.5 на компьютере, который будет центром сбора данных мониторинга» необходимо запустить исполняемый файл Firebird-2.5.х.х win32.exe или Firebird-2.5.х.х_x64.ехе в зависимости от разрядности операционной системы (32-х или 64-х соответственно) на которую устанавливается данная СУБД, выбрать язык инсталляции и следовать указаниям Мастера установки Firebird.

В окне выбора компонентов Firebird Server необходимо указать опцию «Бинарные файлы SuperServer» и после настроек папки меню «Пуск», в окне выбора дополнительных задач, сделать активным опции:

  • Использовать Guardian для управления сервером
  • Запускать в качестве Службы
  • Автоматически запускать Firebird при каждом запуске
  • Установить Апплет Панели Управления
  • Копировать клиентскую библиотеку Firebird в директорию system
  • Создать GDS32.DLL для поддержки унаследованных приложений



В случае, если Firebird Server ранее уже был установлен, то программа установки выдаст окно предупреждение. Для корректной работы Firebird перед повторной установкой его необходимо деинсталлировать и удалить из папки windows\system32 файлы gds32.dll и fbclient.dll (если они есть). При этом необходимо убедиться, что данный Firebird Server не используется для других целей, в противном случае нужно будет выбрать для центра сбора другой компьютер или создать для него виртуальную машину.

После окончания установки в диспетчере задач ОС Windows необходимо проверить запуск служб «Firebird Guardian» и «Firebird Server». Если службы остановлены, то их запуск надо произвести вручную.



УСТАНОВКА ЦЕНТРА СБОРА ДАННЫХ МОНИТОРИНГА


Для установки Центра сбора данных на выбранном для него компьютере, запускается файл PerfExpertCenterSetup_3.0.х.х.exe из директории 2. Установить PerfExpert на компьютере, который будет центром сбора данных мониторинга» пакета установки.

УСТАНОВКА АГЕНТА СБОРА ДАННЫХ МОНИТОРИНГА


Агент сбора данных устанавливается на каждом компьютере, где установлены MS SQL сервера, по которым необходимо производить мониторинг.

Для этого на каждом компьютере, где будет устанавливаться Агент, из директории 3. Запускается файл PerfAgentSetup_3.0.х.х.exe.

В случае, если установка Агента происходит поверх более ранней версии, необходимо остановить сервисную службу Softpoint PerfExpert Agent в Диспетчере задач.



Если в процессе установки служба Softpoint PerfExpert Agent всё же будет запущена, программа установки предложит автоматически закрыть её

В случае, когда программа установки запущена без прав администратора, после завершения установки и выбора в окне завершения мастера установки опции «Запустить Настройка сервиса» может появится ошибка. В этом случае необходимо отдельно запустить файл настройки сервиса с правами администратора. Алгоритм запуска и настройки подробно описаны в разделе «Настройка Агента сбора данных» инструкции.

УСТАНОВКА И НАСТРОЙКА СЕРВИСА СБОРА СЧЁТЧИКОВ НА ТЕРМИНАЛЬНЫХ СЕРВЕРАХ


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

Для установки сервиса на каждом компьютере, где будет происходить сбор анализируемых сведений, из директории 6 запускается файл CounterService_1.0.х.х.exe.
Сервис сбора счётчиков не устанавливается на MS SQL сервер и сервер приложений 1С.

По окончанию инсталляции сервиса автоматически будет запущена программа его настройки.



В случае отсутствия подключения либо доступа к серверу MS SQL, при сохранении параметров будет выдано сообщение об ошибке.

УДАЛЕНИЕ ПРОГРАММНОГО КОМПЛЕКСА PERFEXPERT


Полный алгоритм деинсталляции программного комплекса PERFEXPERT включает в себя:

  1. Удаление Центра сбора данных.
    • Удаление программы «PerfExpert Center»
    • Удаление СУБД «FireBird»
  2. Удаление Агента сбора данных
    • Удаление Агента сбора данных
    • Удаление базы данных «SOFTPOINT» на сервере MS SQL
  3. Удаление внешней компоненты (при интеграции с приложениями программных продуктов 1С. Данный процесс подробно описан в главе «Особенности интеграции с системой 1С»)

    • Изменение конфигурации 1С
    • Удаление файлов внешней компоненты
  4. Удаление Сервиса сбора терминальных счётчиков

УДАЛЕНИЕ ЦЕНТРА СБОРА ДАННЫХ


Для удаления Центра сбора данных необходимо:

  1. Запустить деинсталлятор: Start (Пуск) -> All programs (Все программы) -> PerfExpert -> Control Center -> Удаление программы. В открывшимся окне нажать кнопку «Да»
  2. После завершения процесса деинсталляции в информационном окне нажать кнопку «ОК»
  3. После завершения работы деинсталлятора, удалить папку установки Центра сбора данных, по умолчанию "%Program files%\Softpoint\PerfExpert\Control Center"


УДАЛЕНИЕ FIREBIRD SERVER


Для удаления СУБД FireBird необходимо:

  1. Запустить деинсталлятор: Start (Пуск) -> All programs (Все программы) -> Firebird 2.5 (win32 или х64, в зависимости от версии) -> Uninstall Firebird. В открывшемся окне нажать кнопку «Да»
  2. После завершения процесса деинсталляции в информационном окне нажать кнопку «ОК»
  3. После завершения работы деинсталлятора, удалить папку установки Firebird Server, по умолчанию "%Program Files%\Firebird\Firebird_2_5"

Необходимо учитывать, что СУБД FireBird может использоваться другими программами и её удаление может привести как к сбоям в работе этих программ, так и потере данных. Поэтому перед удалением нужно убедится в том, что FireBird не используется. В противном случае удалять данную СУБД не рекомендуется.


УДАЛЕНИЕ АГЕНТА СБОРА ДАННЫХ


Для удаления Агента сбора данных необходимо:

  1. От имени Администратора открыть консоль настройки Агента сбора с помощью ярлыка «Администрирование» в меню Start (Пуск) -> All programs (Все программы) -> PerfExpert
    -> PerfAgent -> Администрирование
  2. Во вкладке Основные консоли настройки Агента, либо в верхней части окна консоли, нажать кнопку Остановить для остановки работы Агента сбора данных, после чего закрыть консоль


  3. Запустить деинсталлятор: Start (Пуск) -> All programs (Все программы) -> PerfExpert -> PerfAgent -> Удаление программы. В открывшимся окне нажать кнопку «Да»
  4. После завершения процесса деинсталляции в информационном окне нажать кнопку «ОК»
  5. После завершения работы деинсталлятора, удалить папку установки Агента сбора данных, по умолчанию "%Program files%\Softpoint\PerfExpert\PerfAgent"

УДАЛЕНИЕ БАЗЫ ДАННЫХ SOFTPOINT


База данных SOFTPOINT при запуске Агента сбора данных создаётся для временного хранения статистики, полученной от сервисов сбора счётчиков и сервиса интеграции на сервере MS SQL, где установлен Агент.

Удаление базы данных SOFTPOINT производится с помощью стандартных средств MS SQL сервера: среда SQL Server Management Studio, Transact-SQL и т.д.
Перед удалением базы данных SOFTPOINT необходимо убедиться, что данная база не используется другими программными продуктами ООО «Кластерные технологии Софтпоинт». Если данная база данных используется и в других программах, удалять её не рекомендуется, так как в это может привести к некорректной работе программных продуктов.




УДАЛЕНИЕ СЕРВИСА СБОРА ТЕРМИНАЛЬНЫХ СЧЁТЧИКОВ НА ТЕРМИНАЛЬНОМ СЕРВЕРЕ


Для удаления Сервиса сбора счётчиков необходимо:

  1. От имени Администратора открыть консоль настройки Сервиса сбора счётчиков в меню Start (Пуск) -> All programs (Все программы) -> PerfExpert -> Counter Service -> Конфигурация
  2. В консоли настройки нажать кнопку Остановить для остановки работы Сервиса, после чего закрыть консоль
  3. Запустить деинсталлятор: Start (Пуск) -> All programs (Все программы) -> PerfExpert -> Counter Service -> Удаление компонент. В открывшимся окне нажать кнопку «Да»
  4. После завершения процесса деинсталляции в информационном окне нажать кнопку «ОК»
  5. После завершения работы деинсталлятора, удалить папку установки Сервиса сбора счётчиков, по умолчанию "%Program files%\Softpoint\PerfExpert\ Counter Service"

НАСТРОЙКА АГЕНТА СБОРА ДАННЫХ


Прежде всего после установки пакета программного комплекса PERFEXPERT либо подключения нового сервера необходимо произвести настройку Агента сбора данных на серверах MS SQL с которых будут собираться анализируемые сведения.

Настройка подключаемого к мониторингу Агента сбора данных производится отдельно на каждом анализируемом MS SQL сервере.

Для этого необходимо от имени Администратора открыть консоль настройки Агента сбора с помощью ярлыка Администрирование в меню Start (Пуск) -> All programs (Все программы) -> PerfExpert -> PerfAgent -> Администрирование.
Запуск от имени Администратора требуется для корректного создания файла запроса лицензии в процессе настройки агента сбора данных, а также управления статусом службы (запустить службу\остановить службу)


ОСНОВНЫЕ НАСТРОЙКИ ПОДКЛЮЧЕНИЯ


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



Все дальнейшие шаги настройки Агента сбора данных производятся на главной вкладке Основные


В поле «Центр сбора» необходимо указать адрес сервера центра сбора, на которой установлена СУБД FireBird, поставляемая вместе с программным комплексом, и программа просмотра данных мониторинга либо выбрать её из списка видимых сетевых машин.
центра сбора.
В случае неудачи, в окне программы появится предупреждение об ошибке. Чтобы вывести форму с более подробной информацией об ошибке и варианты её устранения, необходимо нажать на ссылку: Агент мониторинга не может соединится с центром сбора




После успешной проверки подключения к Центру сбора данных необходимо указать настройки подключения агента сбора данных к MS SQL серверу. Для этого нужно нажать вторую кнопку «Изменить» (изменение сервера MS SQL).
В данном окне в соответствующих полях ввода данных необходимо прописать параметры SQL:
  • Имя сервера MS SQL. При этом, если SQL сервер является инстансом или кластером, необходимо указать полное имя сервера (например, softpoint11\Sql2005)
  • Имя пользователя, обладающего правами администратора на MS SQL Server. Права администратора необходимы для создания базы данных SOFTPOINT, просмотра системных представлений сервера MS SQL, возможности создания трассировок
  • Пароль для указанного пользователя

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

Введите перечисленные параметры подключения к MS SQL серверу и нажмите кнопку «Подключиться».

Для получения лицензии на право подключения к системе мониторинга нужно нажать третью кнопку «Изменить» (Лицензия) и провести следующую последовательность действий:
  1. Сгенерировать файл запроса на получение лицензии и направить его в ООО «Кластерные технологии Софтпоинт»
  2. Скопировать полученный от ООО «Кластерные технологии Софтпоинт» файл лицензии в каталог лицензий
  3. Проверить подлинность и работоспособность лицензии




Если программа мониторинга устанавливается на сервере MS SQL не впервые, при нажатии на кнопку «Файл запроса» на экране появится окно Аннулирование предыдущих лицензий.
При нажатии кнопки «Аннулировать ранее выданные лицензии и запросы» необходимо будет проделать полностью процедуру получения лицензии.


ЗАПУСК СБОРА ДАННЫХ И ПРОВЕРКА КОРРЕКТНОСТИ СБОРА


После удачной проверки лицензии, появится панель запуска сбора данных. Чтобы начать сбор данных на сервере MS SQL нужно воспользоваться кнопкой «Запустить» (Служба мониторинга) в верхней части окна настройки агента. Убедитесь, что центр сбора доступен, соединение с сервером установлено, лицензия проверена и идёт сбор данных.

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

В последующем для изменения настроек нужно запустить утилиту настройки агента сбора данных мониторинга: Start (Пуск) -> All programs (Все программы) -> PerfExpert -> PerfAgent -> Администрирование.

Чтобы проверить корректность сбора данных, необходимо запустить консоль мониторинга на компьютере с Центром сбора данных. Для этого нужно на компьютере с Центром сбора данных запустить Start (Пуск) -> All programs (Все программы) -> PerfExpert -> ControlCenter -> Мониторинг.
При первом запуске сбора данных для отображения информации в консоли мониторинга необходимо подождать не менее 1 минуты, прежде чем в мониторинг начнут поступать данные от агентов.


Далее необходимо убедится, что в поле «Подключённые сервера» выбран требуемый сервер, а в основном окне мониторинга показаны графики и они соответствуют текущему времени на сервере MSSQL.




В процессе работы можно изменять настройки агента по запуску сбора данных, видов трасс, определить виды логирования, счётчики производительности.
Для этого на сервере с установленным агентом сбора данных необходимо нужно запустить утилиту настройки агента мониторинга: Start (Пуск) -> All programs (Все программы) -> PerfExpert -> PerfAgent -> Администрирование.

Переключая вкладки в верхней части окна настройки агента сбора данных, администратор имеет возможность внести изменения в настройки подключив либо исключив соответствующие опции. Нажатие кнопки «Сохранить изменения» внесёт соответствующие коррективы в работу программы агента сразу после перезапуска службы агента сбора данных.
Во вкладке «Собираемые данные» в верхней части выбираются категории данных, по которым будет осуществляться их сбор, в нижней – отображается состояние сбора данных, управление которыми производится при помощи кнопок, расположенных справа. Изменение настроек потребует перезапуск службы агента.

Во вкладке «Трассировка MS SQL» задаются виды и настройки собираемых трасс.
Для определения баз данных, по которым собираются сведения о длительности завершённых и откате незавершённых транзакций в нижней части окна вкладки необходимо снять галочку с опции «Сбор транзакций по всем базам» и задать базы, по которым будет осуществляться сбор.

Во вкладке «Дополнительно» указываются параметры соединения с Firebird, подключение дополнительных режимов логирования, настройки сбора планов запросов.
Без необходимости не рекомендуется изменять параметры соединения агента с Firebird, заданные по умолчанию.


Во вкладке «Счётчики» можно изменить набор используемых счётчиков, предлагаемый по умолчанию, отключив либо дополнительно подключив их.

Вкладка «Фильтр по MS SQL» позволяет настроить исключения по MS SQL. В данном окне можно выбрать экземпляры MS SQL, по которым счётчики не создаются.

СПЕЦИФИКА НАСТРОЙКИ АГЕНТА СБОРА ДАННЫХ ДЛЯ DOCSVISION И MICROSOFT DYNAMICS AX


В случае, если Агент сбора данных устанавливается для системы автоматизации документооборота и бизнес-процессов предприятий DocsVision либо системы управления предприятием Microsoft Dynamics AX во вкладке «Основные» после ввода параметров подключения к MS SQL и их проверки, то автоматически появляется дополнительная настройка по интеграции баз данных информационных систем, где из выпадающего списка необходимо указать нужную БД и сделать активной опцию «Интеграция»



Сохранение всех проведённых настроек по интеграции DocsVision или Microsoft Dynamics AX происходит после нажатия кнопки «Сохранить»
Необходимо учесть, что PERFEXPERT поддерживает версии Microsoft Dynamics AX, начиная с Dynamics AX 2009 и более поздние.


ОСОБЕННОСТИ ИНТЕГРАЦИИ С СИСТЕМОЙ 1С


PERFEXPERT сертифицирована фирмой-разработчиком ООО «1С» и имеет полную совместимость с 1С: Предприятие. Тем не менее, в отличие от других информационных систем, чтобы использовать все возможности мониторинга, нужно установить ряд дополнительных программ и произвести настройки, специфичных только для системы 1С.

Учитывая специфику работы систем 1С, для корректной работы мониторинга установка дополнительных программ необходима для обеспечения полной интеграции с программным комплексом PERFEXPERT. Пакет инсталлируемых программ зависит от установленной версии 1С.

УСТАНОВКА И УДАЛЕНИЕ СЕРВИСА ИНТЕГРАЦИИ СЕРВЕРА ПРИЛОЖЕНИЙ 1С (УСТАНАВЛИВАЕТСЯ ТОЛЬКО ДЛЯ ВЕРСИЙ 8.X)


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

Данная служба используется только на платформах 1С версий 8.x. Служба должна быть установлена на компьютере с сервером приложений 1С.

Для установки интеграции на сервере приложений 1С запускается инсталляционная программа IntegrationService.
Данный сервис должен быть установлен на все машины с серверами приложений, на которых зарегистрированы информационные базы, подключённые к системе мониторинга. В интегрированных базах данных будут отображаться имена пользователей 1С, исполняемые модули и другая расширенная информация со стороны 1С.
Если на сервере приложений используется кластер 1С-серверов, то сервис интеграции должен стоять только на главном сервере кластера.

Обязательными требованиями к серверу 1С: Предприятие 8.х являются: наличие установленного COM-коннектора и открытые порты ТСР 12900 для сервиса интеграции, чтобы пользователи, загрузившие внешнюю компоненту мониторинга, могли подключиться к сервису интеграции и передавать сведения о своих действиях.


Для установки Сервиса интеграции на сервер приложений 1С версии 8.x, запускается файл IntegrationService_3.0.х.х.exe из директории 4 пакета установки.

После запуска установочного файла необходимо:

  • В открывшемся окне выбрать директорию, в которую будет установлен Сервис интеграции, затем нажать кнопку «Установить», после которой начнётся процесс установки
  • В окне завершения Мастера установки нажать кнопку «Готово», после чего автоматически откроется консоль настройки Сервиса интеграции, с помощью которого производится его подключение и настройка, которые подробно описаны в параграфе «Настройка и управление Сервисом интеграции сервера приложений 1С» инструкции

Для удаления Сервиса интеграции необходимо:

  1. От имени Администратора открыть консоль настройки Сервиса интеграции с помощью ярлыка «Администрирование» в меню Start (Пуск) -> All programs (Все программы) -> PerfExpert -> Integration Service -> Конфигурация
  2. Во вкладке «Управление» консоли настройки Сервиса интеграции, нажать кнопку «Остановить» для остановки работы сервиса, после чего закрыть консоль
  3. Запустить деинсталлятор: Start (Пуск) -> All programs (Все программы) -> PerfExpert -> Integration Service -> Удаление компонент. В открывшемся окне нажать кнопку «Да»
  4. После завершения процесса деинсталляции в информационном окне нажать кнопку «ОК»
  5. После завершения работы деинсталлятора, удалить папку установки Агента сбора данных, по умолчанию "%Program files%\Softpoint\PerfExpert\AppService"

УСТАНОВКА И УДАЛЕНИЕ ВНЕШНЕЙ КОМПОНЕНТЫ ПЛАТФОРМЫ 1С


Внешняя компонента обеспечивает интеграцию клиентских приложений системы 1С Предприятие 8 (Толстый клиент) с системой мониторинга, а также собирает и анализирует информацию от клиентов 1С.
На приложениях 1С версии 7.7 и 8.х (Тонкий клиент) данная компонента не устанавливается.

Для внедрения компоненты необходимо добавить стандартный код в конфигурацию. Поэтому установку данной программы необходимо выполнять в нерабочее время, так как потребуется обновление конфигурации!

Для установки, директорию с файлами внешней компоненты интеграции 1С с системой мониторинга PERFEXPERT (по умолчанию это директория 5) необходимо выложить в общедоступный для пользователей 1С сетевой ресурс. Всем пользователям, которые работают в 1С, нужно дать права чтения на данную директорию, включая поддиректории, и права записи на подкаталог \v0.ххх\debug (значение х – цифровая версия компоненты) в который будут записываться логи пользователей.

Внедрение внешней компоненты в конфигурацию зависит от версии платформы 1С и производится в полном соответствии с инструкцией для каждой версии платформы. В инструкции к инсталляции внешней компоненты (текстовый файл, расположенный в директории установки внешней компоненты) имеется и текст кода, который нужно применить к общему модулю конфигурации.

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

В случае корректной загрузки внешней компоненты пользователями в папке «debug» будут создаваться файлы логов, в названии файла будет указан логин пользователя загрузившего внешнюю компоненту.

В случае если пользователь, не загрузивший компоненту, определён, но не определены причины, по которым он не загрузил внешнюю компоненту и отсутствует возможность сделать это самостоятельно, можно сообщить о проблеме разработчикам PERFEXPERT для решения данной проблемы. Для этого с компьютера любого пользователя, с его учётными данными нужно запустить программу «DebugView» (можно загрузить из technet.microsoft.com/en-us/sysinternals/bb896647) и зайти в 1С используя логин пользователя. Полученный лог необходимо передать специалистам ООО «Кластерные технологии Софтпоинт».

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



В Процедуре «ПриНачалеРаботыСистемы()» необходимо удалить вызов процедуры «ЗагрузкаМониторинга();»
Кроме того, необходимо удалить процедуры загрузки внешней компоненты.
После изменений необходимо сохранить конфигурацию.
После удаления из конфигурации кода загрузки компоненты, необходимо удалить сами файлы внешней компоненты. Они находятся в директории, путь к которой был сохранен перед удалением кода.

При первой попытке удаления, возможно файлы удалить не получится, т.к. внешняя компонента была загружена пользователями 1С. В этом случае компоненту можно будет удалить после начала использования пользователями обновлённой конфигурации, без процедуры загрузки внешней компоненты пользователями.


НАСТРОЙКА И УПРАВЛЕНИЕ СЕРВИСОМ ИНТЕГРАЦИИ СЕРВЕРА ПРИЛОЖЕНИЙ 1С (ДЛЯ ВЕРСИЙ 8.X)


Для настройки и управления Сервисом интеграции используется консоль настройки, запуск которой производится от имени Администратора: Start (Пуск) -> All programs (Все программы) -> PerfExpert -> Integration Service -> Конфигурация». Данная программа предназначена для настройки и проверки работоспособности сервиса мониторинга.

Настройка сервиса интеграции включает в себя:

  • указание параметров подключения к MS SQL
  • указание Администратора кластера 1С (если он существует)
  • определить доступ к информационным базам 1С, в которые внедрена внешняя компонента

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

В случае, если автоматическая директория сервера приложений 1С не определилась, то в окне выбора версии 1С путь к ней отражён не будет. После выбора текущей версии и нажатии кнопки «Ок» консоль будет запущена с предварительным предупреждением об ошибке определения пути.

В дальнейшем, а также если окно выбора версии не появилось, произвести данную настройку можно воспользовавшись кнопкой «Дополнительно» на вкладке «Настройка» консоли. В этом случае необходимо вручную отредактировать значения полей «1C_version» и «1C_path», указав актуальные параметры сервера 1С.



Консоль настройки сервиса интеграции имеет 4 вкладки: «Управление», «Настройка», «Пользователи», «Состояние».

Вкладка «Управление» показывает текущий статус и ошибки настроек сервиса. В ней путём нажатия соответствующих кнопок запускается либо останавливается сервис интеграции.
Если тест настройки указывает на неисправленные ошибки, то при запуске сервиса будет обращено внимание на их наличие. В случае корректного запуска либо остановки сервиса в сообщении будет указано об успешном выполнении команды.

Вкладка «Настройка» позволяет настроить параметры сервиса интеграции, для нормальной работы которого требуется:

  • подключение к рабочим MS SQL серверам на которых установлены и запущены Агенты сбора данных мониторинга
  • доступ к серверу приложений 1С

Подключения к серверу MS SQL необходимо нажать кнопку «Добавить» в закладке «Настройка доступа к базам данных» окна вкладки «Настройка» и внести соответствующие настройки сервера в появившемся окне.



После проверки создаваемого подключения в поле «Статус проверки» будет отображено сообщение «Проверка подключения прошла успешно» в случае успеха или «Указанный сервер не существует или к нему нет доступа» в случае ошибки
Кнопка «Дополнительно» позволяет внести изменения в системные настройки сервиса интеграции. За исключением версии 1С и пути к нему, данные настройки желательно изменять только по рекомендации специалистов ООО «Кластерные технологии Софтпоинт».

Закладка «Настройка доступа к серверу приложений 1С» окна вкладки «Настройка» служит для определения доступа к серверу приложений 1С.

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

Закладка «Интеграция с Softpoint Data Claster» окна вкладки «Настройка» служит для включения и настройки режима интеграции со специализированным программным комплексом «SOFTPOINT DATA CLUSTER» позволяющим реализовать эффективную кластеризацию для серверов MS SQL путём их горизонтального масштабирования, обеспечивающего возможность распределения нагрузки по всем узлам кластера.

Это необходимо для сопоставления сессий SQL с именами пользователей 1С на втором сервере кластера.
Программный комплекс SOFTPOINT DATA CLUSTER является самостоятельным программным продуктом ООО «Кластерные технологии Софтпоинт», поэтому приобретается и устанавливается отдельно. Данная опция консоли включается только при наличии установленного комплекса SOFTPOINT DATA CLUSTER.


Вкладка «Пользователи» содержит таблицу, в которой будут присутствовать записи по пользователям мониторинга, в случае если мониторинг включён и правильно функционирует: настройки верны, в конфигурации 1С указан код загрузки мониторинга, пользователи в данный момент работают в информационной базе

Вкладка «Состояние» содержит информацию о состоянии сервиса:

  • подключения к базам данных MSSQL
  • функционал опроса данных сервера приложений
  • список последних ошибок сервиса



В случае если присутствуют ошибки, следует принять меры по их исправлению, либо сообщить об этом специалистам ООО «Кластерные технологии Софтпоинт» в случае отсутствия возможности сделать это самостоятельно.

Вкладки «Пользователи» и «Состояние» содержат информацию только тогда, когда сервис запущен. Информация в них обновляется нажатием кнопки «Обновить».

После внесения и проверки всех настроек и подключений необходимо сохранить конфигурацию нажатием кнопки «Сохранить конфигурацию» и запустить сервис интеграции кнопкой «запустить сервис» в окне вкладки «Управление».

ПОДКЛЮЧЕНИЕ ПЛАГИНОВ ДЛЯ РАСШИРЕНИЯ ВОЗМОЖНОСТЕЙ СБОРА И АНАЛИЗА ИНФОРМАЦИИ


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

Плагины подключаются путём их размещения в поддиректорий «\AppService\plugins» директория установки Сервиса с последующим его перезапуском по умолчанию «%Program Files (x86)%\Softpoint\PerfExpert\AppService\plugins\».

На момент написания этой инструкции, имеются следующие виды плагинов:

  • plugin_sfp_process.dll – для сбора счётчиков и процессов Windows (входит в основной пакет инсталляции)
  • plugin_win32EventCollector.dll – для сбора журнала системных событий Windows (входит в основной пакет инсталляции)
  • plugin_lgf_parser.dll – для сбора информации из журнала регистрации
  • plugin_v8vk_emplace.dll – для сбора информации из технологического журнала 1С

ДОБАВЛЕНИЕ ПОДДЕРЖКИ МАРКЕРОВ


Алгоритм включения поддержки пользовательских замеров на 1С Предприятие зависит от клиентской версии приложения.

ПОДДЕРЖКА МАРКЕРОВ ДЛЯ 1С «ТОЛСТЫЙ КЛИЕНТ»


Добавление поддержки пользовательских замеров в данной версии клиентского приложения включается путём размещения библиотеки маркеров рядом с остальными папками директории \SoftPointPerfExpert, расположенного в директории с версией программы 1С. При перезаходе пользователей в 1С или подключении новых пользователей компонента маркеров заработает автоматически.

Для внедрения кода маркеров в конфигурацию 1С необходимо в модуле [обычного\управляемого] приложения добавить глобальную переменную Перем mon Экспорт.
В коде внешней компоненты необходимо проверить Переменную mon, при её наличии её нужно удалить или закомментировать.

Замер проводится на заранее известном участке кода, при этом обязательным условием является наличие команды завершения замера «mon. StartCounter» при наличии открытого командой «mon.StopCounter» замера.


м

Приведённый ниже пример показывает замер времени проведения документа «РеализацияТоваровИУслуг» на основе стандартных событий 1С:



В данном случае, ПодпискаНаСобытие1ПередЗаписью вызывается при начале проведения документа «РеализацияТоваровИУслуг».
А ПодпискаНаСобытие2ОбработкаПроведения – после проведения документа «РеализацияТоваровИУслуг»

ПОДДЕРЖКА МАРКЕРОВ ДЛЯ 1С «ТОНКИЙ КЛИЕНТ»


Чтобы добавить пользовательские замеры в данной версии клиентского приложения необходимо наличие в пакете установки следующих компонент маркера:

  • AddIn_IEWindows_x86.cab
  • MANIFEST.XML
  • SPMRKAddInNative_1.dll
  • SPMRKAddInNative_1_x64.dll

Перечисленные файлы в инсталляционном пакете расположены в архивном файле SPMRK_native.zip.

Подключение маркеров для «Тонкого клиента» возможно одним из двух способов:

  • Через общий сетевой ресурс
  • Через макет конфигурации 1С

Так как данные способы подключения маркеров взаимоисключаемы (возможно применение только одного из них), необходимо заранее определить какой из них наиболее удобен для использования. При этом при выборе нужно учитывать, что вариант подключения через макет конфигурации возможен только при работе 32-битного сервера 1С.

Для внедрения кода маркеров в конфигурацию 1С Тонкий клиент через общий сетевой ресурс:

  1. В конфигураторе 1С создаётся модуль в Общие -> Общие модули. Название модуля: КомпонентаМаркера
  2. В свойствах модуля ставится флажок Клиент (управляемое приложение)
  3. В модуль вставляется следующий код:
    Функция ЗагрузитьКомпонентуМаркера(рез) Экспорт
              рез = "Неизвестная ошибка";
              TestVK = неопределено;
              Попытка
               Если ПодключитьВнешнююКомпоненту("\\путь_к_компоненте_маркера\SPMRKAddInNative_1.dll", "Компонента", ТипВнешнейКомпоненты.Native) Тогда
              TestVK = Новый("AddIn.Компонента.SpMrkExt_1");
                   Если НЕ TestVK.Initialize("ИмяSQLСервера", "ИмяБД", ИмяПользователя(), "СерверССервисомИнтеграции", 12900) Тогда
                   рез = "Ошибка инициализации компоненты мониторинга: " + TestVK.GetLastError();
                   КонецЕсли;
              Иначе
                   рез = "Ошибка подключения внешней компоненты";
              КонецЕсли; 
         Исключение 
              рез = "Ошибка 1С при загрузке компоненты маркеров: " + ОписаниеОшибки(); 
         КонецПопытки; 
              Возврат TestVK;  
    КонецФункции 

    • В ПодключитьВнешнююКомпоненту указать путь к сетевому ресурсу, где лежит компонента маркера («путь_к_компоненте_маркера»)
    • В коде TestVK.Initialize(«ИмяSQLСервера», «ИмяБД», ИмяПользователя(), «СерверССервисомИнтеграции», 12900):
      • первый параметр («ИмяSQLСервера») указывается имя SQL сервера
      • второй параметр («ИмяБД») — имя базы данных
      • четвёртый параметр («СерверССервисомИнтеграции») — имя компьютера с запущенным сервисом интеграции, к которому будет подключаться тонкий клиент

  4. В конфигураторе 1С создаётся модуль в Общие -> Общие модули. Название модуля: МодульМаркеры
  5. В свойствах модуля ставятся флажки «Сервер» и «Клиент (управляемое приложение)»
  6. В модуль вставляется следующий код:
    Функция МаркерИнициализация() Экспорт  
         рез = ""; 
         TestVK = КомпонентаМаркера.ЗагрузитьКомпонентуМаркера(рез); 
         Если TestVK = неопределено Тогда 
              сообщить("МаркерИнициализация: ошибка загрузки компоненты маркеров. " + рез); 
         КонецЕсли; 
    КонецФункции   
    Функция МаркерНачало(ИмяМаркера) Экспорт 
         рез = ""; 
         TestVK = КомпонентаМаркера.ЗагрузитьКомпонентуМаркера(рез); 
         Если TestVK = неопределено Тогда 
              сообщить("МаркерНачало: ошибка загрузки компоненты маркеров. " + рез); 
         КонецЕсли; 
         Если НЕ TestVK.BeginMark(ИмяМаркера) Тогда 
              сообщить("Ошибка в BeginMark: " + TestVK.GetLastError()); 
         КонецЕсли; 
    КонецФункции  
    Функция МаркерКонец() Экспорт 
         рез = ""; 
         TestVK = КомпонентаМаркера.ЗагрузитьКомпонентуМаркера(рез); 
         Если TestVK = неопределено Тогда 
              сообщить("МаркерКонец: ошибка загрузки компоненты маркеров. " + рез); 
         КонецЕсли;  
         Если НЕ TestVK.EndMark() Тогда 
              сообщить( "Ошибка в EndMark: " + TestVK.GetLastError() ); 
         КонецЕсли;   
    КонецФункции

  7. В модуле управляемого приложения вставляется следующий код:
    Процедура ПриНачалеРаботыСистемы()  
         МодульМаркеры.МаркерИнициализация(); 
    КонецПроцедуры

    Например:
    Процедура ПриНачалеРаботыСистемы()  
         МодульМаркеры.МаркерНачало("mark1"); 
         МодульМаркеры.МаркерКонец(); 
         МодульМаркеры.МаркерНачало("mark2"); 
         МодульМаркеры.МаркерКонец();   
    КонецПроцедуры


Подключение через макет конфигурации 1С


Способ внедрения маркеров через макет конфигурации работает только с 32-битным сервером 1С.

Для внедрения кода маркеров в конфигурацию 1С Тонкий клиент через макет конфигурации 1С необходимо:

  1. В конфигураторе 1С создаётся модуль в Общие -> Общие модули. Название модуля: КомпонентаМаркера
  2. В свойствах модуля: ставятся флажки «Сервер» и «Вызов сервера» и выбирается опция «на время сеанса» в «Повторное использование возвращаемых значений»
  3. В модуль вставляется следующий код, в котором нужно настроить тип загрузки внешней компоненты и соединение с сервисом интеграции:
    Функция ЗагрузитьКомпонентуМаркера(рез) Экспорт 
             рез = "Неизвестная ошибка";  
             TestVK = неопределено; 
             Попытка 
                    Если  
    ПодключитьВнешнююКомпоненту("ОбщийМакет.МакетМаркеры", "Компонента", ТипВнешнейКомпоненты.Native) Тогда 
             TestVK = Новый("AddIn.Компонента.SpMrkExt_1"); 
                                Если НЕ TestVK.Initialize("ИмяSQLСервера", "ИмяБД", ИмяПользователя(), "СерверССервисомИнтеграции", 12900) Тогда 
                                             рез = "Ошибка инициализации компоненты мониторинга: " + TestVK.GetLastError(); 
                                КонецЕсли; 
                    Иначе 
                                рез = "Ошибка подключения внешней компоненты"; 
                    КонецЕсли; 
    Исключение 
             рез = "Ошибка 1С при загрузке компоненты маркеров: " + ОписаниеОшибки(); 
    КонецПопытки;   
             Возврат TestVK;  
    КонецФункции

    • В конфигураторе добавляется макет в Общие -> ОбщиеМакеты. В открывшимся диалоге, выбирается «Двоичные данные», а в «Загрузить из файла» выбирается файл SPMRK_native.zip. Имя макета указывается как «МакетМаркеры»
    • В коде TestVK.Initialize(«ИмяSQLСервера», «ИмяБД», ИмяПользователя(), «СерверССервисомИнтеграции», 12900):
      • первый параметр («ИмяSQLСервера») указывается имя SQL сервера
      • второй параметр («ИмяБД») — имя базы данных
      • четвёртый параметр («СерверССервисомИнтеграции») — имя компьютера с запущенным сервисом интеграции, к которому будет подключаться тонкий клиент


  4. В конфигураторе 1С создаётся модуль в Общие -> Общие модули. Название модуля: МодульМаркеры
  5. В свойствах модуля ставятся флажки «Сервер» и «Вызов сервера»
  6. В модуль вставляется следующий код:
    Функция МаркерИнициализация() Экспорт  
               рез = ""; 
               TestVK = КомпонентаМаркера.ЗагрузитьКомпонентуМаркера(рез); 
               Если TestVK = неопределено Тогда 
                          сообщить("МаркерИнициализация: ошибка загрузки компоненты маркеров. " + рез); 
               КонецЕсли; 
    КонецФункции   
    
    Функция МаркерНачало(ИмяМаркера) Экспорт 
               рез = ""; 
               TestVK = КомпонентаМаркера.ЗагрузитьКомпонентуМаркера(рез); 
               Если TestVK = неопределено Тогда 
                           сообщить("МаркерНачало: ошибка загрузки компоненты маркеров. " + рез); 
               КонецЕсли; 
               Если НЕ TestVK.BeginMark(ИмяМаркера) Тогда 
                           сообщить("Ошибка в BeginMark: " + TestVK.GetLastError()); 
               КонецЕсли; 
    КонецФункции  
    
    Функция МаркерКонец() Экспорт 
               рез = ""; 
               TestVK = КомпонентаМаркера.ЗагрузитьКомпонентуМаркера(рез); 
               Если TestVK = неопределено Тогда 
                            сообщить("МаркерКонец: ошибка загрузки компоненты маркеров. " + рез); 
               КонецЕсли;  
               Если НЕ TestVK.EndMark() Тогда 
                           сообщить( "Ошибка в EndMark: " + TestVK.GetLastError() ); 
               КонецЕсли; 
    КонецФункции

  7. В модуле управляемого приложения вставляется следующий код:
    Процедура ПриНачалеРаботыСистемы()  
               МодульМаркеры.МаркерИнициализация(); 
    КонецПроцедуры

    Например:
    Процедура ПриНачалеРаботыСистемы()  
               МодульМаркеры.МаркерНачало("mark1"); 
               МодульМаркеры.МаркерКонец(); 
               МодульМаркеры.МаркерНачало("mark2"); 
               МодульМаркеры.МаркерКонец(); 
    КонецПроцедуры


Названия маркеров задаются на основе зарегистрированных через настройки маркеров в меню «Настройки» основного окна мониторинга.


НАСТРОЙКА ОТОБРАЖЕНИЯ МАРКЕРОВ


Для того, чтобы настроить сбор и выбрать режим отображения значений маркеров (пользовательских замеров), вид графиков, их отображающих и цветовые настройки в подменю «Настройки» основного окна мониторинга выбирается опция «Настройки маркеров».

Настройка маркеров производится во вкладке «Сбор маркеров» окна настройки маркеров.
Вкладка «Сбор маркеров» активна только в режиме on-line при котором идёт сбор сведений. В режиме offline, при просмотре записанных данных, эта вкладка в окне настройки не отображается.

Для добавления маркера необходимо нажать на кнопку «Добавить» и заполнить все необходимые параметры маркера, после чего нажать на кнопку «Применить» для сохранения настроек. После этого настройка маркеров будет завершена.
Названия маркеров должны совпадать с именами, указанными в конфигурации при добавлении их поддержки.

Редактирование маркера происходит путём изменения параметров в соответствующих полях таблицы.

Для временного отключения маркеров в поле «Активен» напротив выбранного замера, убирается соответствующий флажок.

При необходимости удаления пользовательского замера, в таблице выбирается маркер, подлежащий удалению, нажимается кнопка «Удалить» и далее, для подтверждения действия – кнопка «Применить».

Настройка параметров отображения маркеров (цвета) в основном окне мониторинга, производится во вкладке «Отображение» окна настройки маркеров.



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

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

В зависимости от настроенного диапазона значений, временные затраты до минимальной длительности будут отображаться зелёным цветом (по умолчанию), попадающие в заданный промежуток времени – жёлтым и превышающие максимальную длительность – красным. На шкале маркеров при наведении на линейки через дробь соответственно отображаются красные/жёлтые/зелёные маркеры.



Заключение


Система мониторинга и диагностики СУБД PERFEXPERT позволяет оценивать нагрузку на все серверы системы в единый момент времени. Возможность видеть ситуацию одновременно из разных подсистем (например, 1С и SQL) помогает выявлять блокировки и другие случаи, отрицательно влияющие на производительность всей системы в целом.

Порядок проведения бесплатного тестирования


Для участи в акции по тестированию PERFEXPERT в своей инфраструктуре необходимо выполнить следующие действия:

  1. Скачать Анкету и заполнить её
  2. Отправить Анкету по адресу 1@stss.ru с темой письма «ХАБР — ТЕСТИРОВАНИЕ PERFEXPERT»
  3. Дождаться звонка/письма специалиста
  4. Получить актуальный для Вашей ситуации дистрибутив PERFEXPERT
  5. Используя эту статью или высланные руководства приступить к установке и тестированию
  6. После тестирование возможен переход на коммерческую версию ПО

Спасибо за внимание, жду Ваших комментариев!

Комментарии (5)


  1. LoadRunner
    10.08.2017 13:38

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

    Кстати, пользовались у себя такой штукой. Довольно мощная, но покупать не стали — актуальность в данном мониторинге отпала.


    1. Usikoff Автор
      10.08.2017 13:51
      +2

      Почему Вы решили, что тестовый период доступен без акций? Я думаю разработчик конечно продемонстрирует продукт в течение пары дней, а дальше уже необходимо принимать решение о покупке. Две недели помогут получить более ясную картину происходящего в СУБД.


      1. LoadRunner
        10.08.2017 13:57
        +1

        По своему опыту сужу. Вообще, у компании довольно гибкий подход к клиенту и тестовый период может быть расширен. Особенно, когда дело касается мониторинга — два дня не показатель, а вот за неделю-две уже более ясную картину можно увидеть.
        Да и уверен, что и у других производителей ПО индивидуальный подход к каждому потенциальному клиенту.


  1. Melex
    10.08.2017 18:51

    Внушает. Но ничего не нашел про стоимости и лицензии.
    На кого идет лицензия? На разработчика или конечного клиента?
    На сколько баз/серверов, на что вообще ограничение стоит?
    У вас подписка или один раз купил и юзай?
    Есть ли наборы для компаний, которые обслуживают клиентов. Вот например у нас есть 5 клиентов, от мелочи (100 человек в базе), до овер дофига узлов, которые работают в псевдоонлайн режиме, можем ли мы купить себе лицензию, но при необходимости подключать к серверам клиентов для теста косяков?


    1. fishca
      11.08.2017 00:20
      +2

      За лицензию надо платить постоянно. Срок на который продается лицензия 1,3,5 лет если не изменяет память.
      Очень положительное впечатление оставляет продукт из-за наличия возможности сопоставить выполняемый код 1С прямо «на лету» с выполняемым запросом, причем онлайн. Покупка идет на каждый сервер SQL. Продукт стоящий.