О Мониторе

Что такое Монитор

Монитор - инструмент для обнаружения и анализа проблем производительности в системах 1С.

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

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

Концепция

Программа состоит из двух частей, агента монитора (написан на Java с открытым исходным кодом) и конфигурации 1С (код закрыт).

Агент устанавливается на сервера 1С и выполняет настройку, сбор и предварительную обработку логов технологического журнала. Агент работает как служба и запускается как на Windows, так и на Linux. Код агента полностью открыт и размещен на github.

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

Каждые несколько минут база посылает запрос агенту Монитора на установленных серверах, агент собирает «дельту» логов с последнего анализа, и возвращает эти данные в базу, где они анализируются и сохраняются.

Установка

Для установки необходимо скачать инсталляционный пакет https://private.1smonitor.ru/distributive/MONITOR-2.zip и распакавать его в любой каталог.

Установка агента Монитора на Windows

Необходимо установить Агент Монитора как службу и запустить ее под тем же пользователем, под которым работает служба сервера 1С, это необходимо чтобы Агент имел доступ к файлу logcfg.xml и логам технологического журнала.

Для этого необходимо выполнить следующие шаги:

1. Скопируйте каталог monitor-remote-agent-windows с Агентом Монитора на все серверы 1С, на которых планируется производить мониторинг.

2. Дайте полный доступ к этому каталогу пользователю, под которым запущена служба сервера 1С.

3. По умолчанию Агент Монитора работает по протоколу http. Если нужна работа по протоколу https, то переименуйте файл \bin\monitor-remote-agent.jks.disabled в \bin\monitor-remote-agent.jks. Этот файл содержит в себе самоподписанный сертификат, и если он находится в каталоге с исполняемым файлом Агента Монитора \bin\monitor-remote-agent.jar, то при старте Агента активируется протокол https. Вы можете сделать такой сертификат самостоятельно, воспользовавшись утилитой \bin\jdk8u422-b05-jre-64\bin\keytool.exe - в командной строке выполните команду:

keytool ^
-genkey ^
-keyalg RSA ^
-alias selfsigned ^
-storetype JKS ^
-keystore monitor-remote-agent.jks ^
-storepass monitor ^
-keypass monitor ^
-dname "CN=, OU=, O=, L=, ST=, C=" ^
-validity 9999 ^
-keysize 2048 ^
-sigalg SHA256withRSA ^
-ext SAN=DNS:YOUR-COMPUTER-NAME,IP:127.0.0.1

Полученный файл monitor-remote-agent.jks поместите в каталог с исполняемым файлом Агента (\bin\monitor-remote-agent.jar), заменив существующий.

4. Установите службу Агента Монитора, запустив файл monitor-remote-agent-windows\service-install.cmd

После выполнения должна появиться надпись:

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

6. На вкладке Восстановление в качестве действия при сбое укажите значение Перезапуск службы

7. Перейдите на закладку Общие свойств службы и проверьте что выбран тип запуска Автоматически. Запустите службу кнопкой Запустить.

8. Проверьте работоспособность Агента Монитора. На компьютере, на котором установлен Агент, запустите браузер и перейдите по адресу http://localhost:8085/ping Браузер должен отобразить сообщение OK.

Установка агента Монитора на Linux

1. Скопируйте все файлы из каталога monitor-remote-agent-linux с Агентом Монитора в рабочие каталоги серверов, на которых планируется производить мониторинг.

2. По умолчанию Агент Монитора работает по протоколу http. Если нужна работа по протоколу https, то переименуйте файл bin/monitor-remote-agent.jks.disabled в bin/monitor-remote-agent.jks. Этот файл содержит в себе самоподписанный сертификат, и если он находится в каталоге с исполняемым файлом Агента Монитора bin/monitor-remote-agent.jar, то при старте Агента активируется протокол https. Вы можете сделать такой сертификат самостоятельно, воспользовавшись утилитой bin/jdk8u422-b05-jre/bin/keytool - в консоли выполните команду:

keytool \
-genkey \
-keyalg RSA \
-alias selfsigned \
-storetype JKS \
-keystore monitor-remote-agent.jks \
-storepass monitor \
-keypass monitor \
-dname "CN=, OU=, O=, L=, ST=, C=" \
-validity 9999 \
-keysize 2048 \
-sigalg SHA256withRSA \
-ext SAN=DNS:YOUR-COMPUTER-NAME,IP:127.0.0.1

Полученный файл monitor-remote-agent.jks поместите в каталог с исполняемым файлом Агента (bin/monitor-remote-agent.jar), заменив существующий.

3. Установите права на выполнение:

chmod +x service-install.sh
chmod +x service-remove.sh
chmod +x bin/monitor-remote-agent.sh
chmod +x bin/jdk8u422-b05-jre/bin/java

4. Запустите под администратором командный файл service-install.sh с указанием пользователя, от имени которого работает служба сервера 1С. Например, если служба сервера 1С запущена под пользователем user1c, то следует выполнить команду:
sudo ./service-install.sh user1c

5. Проверьте работоспособность Агента Монитора. На компьютере, на котором установлен Агент, запустите браузер и перейдите по адресу http://localhost:8085/ping или https://localhost:8085/ping в зависимости от варианта установки Агента. Браузер должен отобразить сообщение "OK".

Установка базы Монитора

Необходимо создать пустую клиент-серверную базу 1С и загрузить туда файл MONITOR-TRIAL-2.cf из инсталляционного пакета. База обязательно должна быть клиент-серверной, а не файловой. Версия платформы для базы Монитора должна быть 8.3.12 или выше.

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

Настройка

Настройка объектов дерева мониторинга

При первом запуске будет открыта вкладка Настройки с деревом мониторинга. Здесь необходимо указать те объекты, которые Монитор будет исследовать.

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

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

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

Добавление и удаление элементов дерева мониторинга выполняется через контекстное меню.

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

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

Создание и настройка компьютера

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

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

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

Имя компьютера - это сетевое имя по которому будет идти обращение к данному компьютеру, допускается указание IP адреса вместо имени.

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

Операционная система - система установленная на указанном компьютере.

Роли - функции которые выполняет данный компьютер.

Сервер 1С - на компьютере установлена служба сервера 1С.

Сервер СУБД - на компьютере установлена СУБД.

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

Порт Агента Монитора - номер порта на котором работает Агент Монитора. Номер порта агента задается в момент установки Агента Монитора в файле \monitor-remote-agent\bin\service.cmd значение поля set AGENT_PORT. По умолчанию используется порт 8085.

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

Путь к логам PerfMon - путь к каталогу на данном компьютере, где будут храниться счетчики Performance monitor.  Доступно только если выбрана роль Потребитель ресурсов.

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

В угловом меню Еще скрыто несколько дополнительных функций.

Обновить Агент Монитора - запускает процесс обновления агента на данном компьютере. Последняя версия агента содержится в конфигурации, подключения к Интернет не происходит.

Порт обновления Агента Монитора - отображает номер порта для обновления Агента Монитора. Обновление происходит с помощью специального процесса под названием стартер, который выполняет остановку, обновление и запуск Агента Монитора без рестарта службы. Номер порта стартера задается в момент установки Агента Монитора в файле \monitor-remote-agent\bin\service.cmd значение поля set STARTER_PORT

По умолчанию используется порт 8084.

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

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

Создание и настройка службы 1С

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

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

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

Компьютер - компьютер на котором запущена служба сервера 1С.

Порт сервера 1С - порт службы сервера 1С. Важно отметить что речь идет именно про порт службы, а не порт кластера. Порт службы по умолчанию равен 1540. Если нужно определить порт службы сервера 1С, нужно открыть свойства службы и посмотреть значение ключа -port.

Администратор сервера 1С - логин администратора сервера 1С как он задан в консоли кластера.

Пароль - пароль администратора сервера 1С.

Администраторы сервера 1С задаются в консоли кластера в ветке с именем компьютера.

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

Путь к настройках тех. журнала - путь к файлу настроек технологического журнала logcfg.xml для данной службы. Если файл отсутствует, то Монитор его создаст. Если платформа установлена в каталог по умолчанию, то как правило файл находится по адресу: C:\Program Files\1cv8\conf\logcfg.xml

Так же файл может располагаться в каталоге с номером версии платформы, например: C:\Program Files\1cv8\8.3.22.1750\bin\conf\logcfg.xml

Использовать каталог с номером версии не рекомендуется, т.к. в случае обновления, этот файл перестанет использоваться новой платформой.

Важно отметить что файл logcfg.xml должен быть только один, во избежание путаницы рекомендуется всегда создавать файл только в общем каталоге C:\Program Files\1cv8\conf\logcfg.xml и удалить файл из всех остальных мест.

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

Настройки сервера администрирования RAS - данные настройки не являются обязательными, они используются только при включении показателя Данные сеансов.

Компьютер RAS - компьютер на котором установлен RAS (Remote Administration Server) сервер.

Порт сервера RAS - порт на котором запущен RAS.

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

Создание и настройка кластера

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

Кластер имеет следующие реквизиты:

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

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

Имя кластера - имя кластера в том виде, как оно задано в консоли кластеров.

Порт кластера - порт главного менеджера кластера. Именно этот порт указывается в строке подключения к базе, если он отличается от значения по умолчанию (1541).

Администратор кластера - логин администратора кластера.

Пароль - пароль администратора кластера.

Администраторы кластера указываются в консоли кластера в ветке с именем кластера.

Данные кластера в основном используются при включении показателя Данные сеанса, если этот показатель не используется, то достаточно заполнить только имя и порт кластера.

Создание и настройка базы

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

База имеет следующие реквизиты:

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

Кластер - кластер к которому относится база.

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

Имя исследуемой базы СУБД - имя базы на сервере СУБД. Если нужно выяснить имя базы СУБД, можно открыть свойства базы в консоли кластера и посмотреть значение свойства База данных.

Псевдоним - отображаемое в Мониторе имя базы данных.

Инстанс СУБД - данные инстанса СУБД на котором установлена исследуемая база. Реквизит не является обязательным к заполнению, но если указать инстанс, это дает дополнительные возможности для анализа. Например, получение графического плана запроса, анализ блокировок и дедлоков СУБД, дополнительные сведения о запросе, анализ показателя Данные СУБД и пр.

Для заполнения инстанса нужно создать и заполнить новый элемент справочника.

Создание и настройка инстанса

Компьютер-сервер СУБД - компьютер на котором установлена СУБД. Обратите внимание что время на сервере 1С и СУБД должно быть синхронизировано, иначе возможны ошибки при анализе.

Тип СУБД - тип используемой СУБД.

Именованный инстанс - если имя инстанса отличается от имени по умолчанию, следует поставить этот флаг и указать имя инстанса.

Это MS SQL 2008 - флаг ставится автоматически при записи в том случае, если используется MS SQL 2008. Если флаг установлен, то анализ блокировок и дедлоков на СУБД будет не доступен, т.к. для их анализа используются расширенные события, которые в MS SQL 2008 очень ограничены по функционалу.

Анализ блокировок и взаимоблокировок 1С доступен всегда, он не зависит от СУБД.

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

Аутентификация - данный раздел определяет под каким пользователем будут выполняться запросы к серверу СУБД. Следует учесть что у пользователя который

Аутентификация Windows - если флаг установлен, то прямые запросы к СУБД будут выполнятся под тем пользователем, под которым запущен сервер 1С базы Монитора. Если флаг снят, то для доступа к СУБД используются логин и пароль указанные ниже. Следует учесть что у логина под которым будет идти соединение с СУБД должны быть следующие права, Alter any event session, View server state, View any definition.

Логин - имя пользователя СУБД.

Пароль - пароль пользователя СУБД.

После заполнения данных, убедитесь что есть доступ к серверу СУБД нажав Протестировать доступ.

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

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

Наследуется из инстанса - если флаг установлен, то данные для авторизации используются из инстанса. Если флаг снят, то нужно указать логин и пароль для авторизации в СУБД.

Логин - имя пользователя СУБД.

Пароль - пароль пользователя СУБД.

Версия платформы - версия платформы для исследуемой базы. Если используется режим совместимости с 8.2, то нужно выбрать значение 8.2 или режим совместимости с 8.2.

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

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

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

Загрузка метаданных

Кнопка Метаданные - вызывает меню из двух пунктов, которые позволяют выгрузить и загрузить метаданные.

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

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

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

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

Создание и настройка дополнительного рабочего сервера кластера

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

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

Ниже приведен пример когда кластер Локальный кластер имеет два сервера 1С. В данном случае центральным сервером 1С является служба Srv:1540 которой кластер принадлежит, а рабочим сервером является служба Srv2:1540 на компьютере Srv2.

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

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

На всех серверах 1С, добавленных в дереве мониторинга, обязательно должен быть установлен Агент Монитора, т.к. именно он будет настраивать и обрабатывать логи технологического журнала.

Настройка показателей

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

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

Настройка мониторинга счетчиков производительности Performance monitor

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

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

Далее в карточке компьютера нужно установить флаг Потребитель ресурсов и указать путь к логам PerfMon.

Если включить показатель Счетчики производительности, но не установить флаг Потребитель ресурсов или не указать Путь к логами PerfMon, то при сохранении настроек возникнет ошибка.

Настройка мониторинга долгих запросов

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

Минимальная длительность запросов (сек.) - длительность запроса, при которой он будет считаться проблемным и фиксироваться Монитором. Не следует устанавливать очень низкое значение, т.к. это повышает нагрузку на на систему за счет логирования большого объема информации. Это единственная обязательная настройка для данного показателя, остальные настройки можно не указывать.

Получать план запроса - если флаг установлен, Монитор будет получать план запроса. Если используется MS SQL 2012 или выше и заполнен инстанс, тогда с помощью расширенных событий будет собран XML план запроса, который удобно анализировать в графическом виде. Во всех остальных случаях будет собран текстовый план запроса в технологическом журнале.

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

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

Шаблон текста запроса - фильтр по тексту запроса, можно использовать символы шаблонов, например: %

Если в шаблоне текста запроса указать значение %InfoRg211%, то будут собраны все запросы в тексте которых встречается таблица InfoRg211.

Шаблон контекста - фильтр по контексту, т.е. по стеку вызова, из которого был вызван запрос. Если в шаблоне контекста указать %Документы.Заказы%, то будут собраны только запросы при вызове которых встретилась строка кода содержащая фразу Документы.Заказы.

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

 

Настройка мониторинга ожиданий на блокировках

При выборе базы в дереве объектов мониторинга, становится доступен показатель Ожидание на блокировке. Данный показатель позволяет анализировать ожидания на блокировках 1С и СУБД (в случае использования MS SQL 2012 и выше).

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

Анализировать блокировки СУБД - если флаг установлен, будут анализироваться блокировки на сервере СУБД. Флаг доступен только при использовании MS SQL 2012 и заполненном поле инстанса у выбранной базы. Данный флаг следует включать только по мере необходимости т.к. анализ блокировок СУБД требует логирования большого объема данных, достаточно трудоемок и может вызывать повышенную нагрузку на сервер. Лучше не включать данный флаг без лишней необходимости.

Определять виновников ожидания - если флаг установлен, то при анализе будут отображается как виновники, так и жертвы ожиданий. Если флаг снят, будут отображаться только жертвы ожиданий. Флаг можно установить только при использовании полнофункциональной (платной). В бесплатной версии при сохранении настроек будет выдана ошибка.

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

Настройка мониторинга взаимоблокировок

При выборе базы в дереве объектов мониторинга, становится доступен показатель Взаимоблокировка. Данный показатель позволяет анализировать взаимные блокировки на блокировках 1С и СУБД (в случае использования MS SQL 2012 и выше). Для анализа взаимоблокировок требуется фиксировать блокировки, поэтому включение показателя Ожидание на блокировке является необходимым. Если требуется выполнить анализ взаимоблокировок 1С, то у показателя ожидания на блокировках должна быть включена настройка Анализировать блокировки 1С.

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

Анализировать взаимоблокировки СУБД - если флаг установлен, будут анализироваться взаимоблокировки на сервере СУБД. Флаг доступен только при использовании MS SQL 2012 и заполненном поле инстанса у выбранной базы. Данный флаг следует включать только по мере необходимости т.к. анализ взаимоблокировок СУБД требует логирования большого объема данных, достаточно трудоемок и может вызывать повышенную нагрузку на сервер. Лучше не включать данный флаг без лишней необходимости.

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

Настройка мониторинга ошибок тех. журнала

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

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

Показатель имеет следующие настройки:

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

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

Категории - категории ошибки которые будут загружены или проигнорированы для данной базы.

Настройка категорий ошибок тех. журнала

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

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

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

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

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

Если ошибка подходит под условие, она проверяется на соответствие дополнительным фильтрам. Зачем они нужны? Одна ошибка может порождать несколько событий EXCP с одинаковым текстом и немного отличными значениями свойств. Чтобы не загружать дубли используются дополнительные фильтры. В качестве поля проверки указывается свойство события EXCP и вид сравнения, в качестве значения указывается значение свойства. Если в фильтрах указано несколько свойств, то между ними действует логическое И, то есть все указанные свойства должны соответствовать значениям. Значения для фильтров задаются в виде обычной строки, а не шаблона регулярного выражения. Дополнительные фильтры указывать не обязательно.

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


Категории собраны в группы по определенной тематике. Если при загрузке ошибки категория не найдена, то будет создана новая категория в специальной группе
Без категории. Имя и условия новой категории формируется из первой строки ошибки.

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

У каждой группы и категории есть поле Приоритет - оно определяет порядок, в котором будут проверяться категории при категоризации ошибки. Сначала ошибка проверяется для категорий группы с приоритетом 0, внутри группы так же проверяется сначала категория с приоритетом 1, потом 2 и т.д. Если в этой группе ни одна из категорий не подходит, переходим к категориям из группы с приоритетом 1 и т.д.

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

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

Категориям можно назначить приоритет автоматически, с помощью кнопки напротив поля Приоритет.

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

Если вы не хотите, чтобы какая-то ошибка загружалась в базу, тогда просто перенесите соответствующую категорию в группу Исключения.

Настройка мониторинга данных СУБД

При выборе базы в дереве объектов мониторинга, становится доступен показатель Данные СУБД (доступен в случае использования MS SQL 2012 и выше). Показатель позволяет отслеживать целый ряд данных полученных из СУБД. В отличие от остальных показателей, данные СУБД загружаются один раз в день в 15:00 и носит скорее справочный характер.

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

Настройка мониторинга серверных вызовов

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

Память Мб - фильтр по памяти занятой серверным вызовом.

Длительность вызова (сек.) - фильтр по длительности серверного вызова.

Пиковая память Мб - фильтр для пиковой памяти занятой за серверный вызов.

Записано на диск Мб - объем данных записанный на диск за серверный вызов.

Прочитано с диска Мб - объем данных прочитанных с диска за серверный вызов.

Время процессора (сек.) - процессорное время которое ушло на обслуживание вызова.

Контекст - шаблон условия на контекст серверного вызова. Если в поле контекста указать %Документы.Заказы%, то будут собраны только вызовы в контексте которых содержится фраза Документы.Заказы.

Настройка мониторинга замеров ключевых операций

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

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

Удалять файл после загрузки - если флаг установлен, то после загрузки в Монитор, файл замера будет удален. Если флаг снят, то после загрузки файл будет переименован, к его имени добавляется фраза _ЗАГРУЖЕНО_В_МОНИТОР.

Настройка мониторинга данных сеанса

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

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

Если данные RAS не указаны, то будет ошибка при попытке сохранить изменения настроек.

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

Групповое применение показателей

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

Далее откроется окно для выбора баз, к которым будут применены показатели выбранной базы.

В данном примере все показатели базы Монитор будут применены к базе Demo, т.к. отмечена только она.

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

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

Запуск анализа показателей

Сбор данных показателей происходит фоновым заданием. Для каждого показателя установлен свой интервал времени для сбора и анализа. Посмотреть расписание запуска заданий можно в конфигураторе, либо в консоли заданий на вкладке Настройки - Параметры - Отладка - Консоль заданий.

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

 - запускает анализ только выделенного показателя.

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

Настройка параметров Монитора

Параметры работы Монитора настраиваются на вкладке Настройки - Параметры.

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

Период хранения данных

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

Отладка

В данном разделе собраны настройки, позволяющие расследовать неполадки в работе Монитора.

Отладка - включает режим отладки, при этом Монитор начинает логировать свои действия. Включать только по согласованию с разработчиками т.к. это несколько замедляет работу Монитора.

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

Имя отправителя логов - любое произвольное имя клиента, необходимо для понимания от кого именно пришли логи.

Уровень логирования - определяет насколько подробными будут логи.

Период хранения лога событий (дней) - определяет сколько дней хранить логи отладки.

Лог событий - открывает регистр сведений в котором хранится отладочная информация.

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

Настройки агента

Максимальная длина строки - максимальная длина значения свойства технологического журнала, которую вернет агент. Настройка необходима для ограничения объема потребляемой памяти при парсинге. Например, текст запроса содержит 3 млн. символов, если значение этой настройки 10 000, то вернутся только первые 10 000 символов этого запроса. Если значение не указано, то будет возвращено 32 768 (32 Кб) символов.

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

Обрабатывать данные в один поток - если параметр выключен, то Агент Монитора обслуживает приходящие запросы параллельно, иначе по очереди. Не рекомендуется включать без острой необходимости т.к. это замедляет работу агента.

Сохранить настройки - сохраняет измененные параметры. Если изменить параметры но не нажать кнопку, то настройки не сохранятся.

Изменить форму - позволяет изменить внешний вид формы анализа.

Настройка уведомлений

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

Следует учитывать что уведомления рассылаются с сервера 1С на котором установлена база Монитора. Если у сервера нет доступа в интернет, уведомления работать не будут.

Уведомления по почте

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

Использовать по умолчанию - если флаг установлен, то данный способ уведомления будет использован по умолчанию.

Адрес сервера SMTP - адрес сервера SMTP исходящей почты.

Порт - номер порта для исходящей почты.

Использовать SSL - если флаг установлен, будет использоваться защищенное соединение.

Пользователь - имя пользователя отправителя.

Адрес отправителя - адрес отправителя.

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

После заполнения полей необходимо нажать Сохранить настройки. 

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

Уведомления через Telegram

Для уведомлений по почте, нужно заполнить реквизиты в разделе Telegram.

Использовать по умолчанию - если флаг установлен, то данный способ уведомления будет использован по умолчанию.

Сообщения отправляются с помощью Telegram-бота, если у Вас нет ни одного бота, от имени которого будут отправляться сообщения, создайте его.

Для создания бота добавьте в контакты @BotFather, введите команду /newbot, затем введите имя бота (придумайте), а после - имя пользователя для этого бота, имя должно заканчиваться на "bot" (тоже придумайте). @BotFather укажет Вам токен нового бота: "Use this token to access the HTTP API: <Здесь-будет-токен>".

Полученный токен укажите в поле Токен бота. Обязательно добавьте своего бота в контакт-лист,

иначе Вы не получите сообщения.

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

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

и нужно указать в поле Получатели по умолчанию.

После заполнения полей необходимо нажать Сохранить настройки. 

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

Тест работы Монитора

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

Тестирование проводится на вкладке Настройки - Тест-работы.

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

Тестирование на базе Монитора

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

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

Выполнить долгий запрос - создает запрос дольше 5 секунд. Это позволяет проверить будут верно ли настроен анализ долгих запросов.

Создать ожидания на блокировках - воспроизводит 4 ожидания на блокировках, 2 ожидания на блокировках 1С из которых один таймаут. Еще 2 ожидания на блокировках СУБД из которых также один таймаут.

Создать взаимоблокировку - воспроизводит 2 взаимоблокировки на блокировках 1С.

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

Далее на соответствующих закладках для анализа нужно проверить появились ли данные.

Тестирование на исследуемой базе

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

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

Если нужно протестировать анализ блокировок или взаимоблокировок, нужно открыть обработку в двух сеансах.

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

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

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

Для тестирования анализа взаимных блокировок, нужно в обоих сеансах выбрать одинаковый  элемент 1 и одинаковый элемент 2 . Далее в одном сеансе нажмите Заблокировать элемент 1 потом 2, а во втором сеансе Заблокировать элемент 2 потом 1. Будет создана взаимоблокировка и на экране появится соответствующая ошибка.

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

Активация

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

Чтобы получить полнофункциональную версию, необходимо активировать Монитор на вкладке Активация.

Активация нужна если вы хотите протестировать платные функции Монитора используя бесплатную 2-х недельную версию, а так же если вы хотите купить полноценную версию.

Активация Монитора

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

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

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

Далее можно либо получить бесплатную полнофункциональную версию на 2 недели, либо выбрать тариф и оплатить Монитор.

Получение бесплатной полной версии для тест-драйва

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

Оплата

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

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

Нужно загрузить новую конфигурацию  в текущую базу Монитора. Обновление можно сделать через меню Конфигурация - Загрузить конфигурацию из файла, делать процедуру сравнения и объединения не нужно.

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

Сведения о программе и лицензии

Общая информация о программе и дата действия лицензии располагается на вкладке Сведения.

Версия - текущая версия конфигурации Монитор.

Дата сборки - дата сборки данной версии.

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

Лицензия до - дата до которой действует ваша лицензия.

Почта - почта разработчиков для связи. В случае возникновения вопросов или проблем, следует обращаться именно по этому адресу.

Новости и обновления - канал в телеграм где публикуются новости и обновления Монитора.

Сайт - сайт Монитора.

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

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

Анализ

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

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

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

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

Анализ графика

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

Страницу графика условно можно разделить на две большие части: таблица показателей и сам график.

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

Таблица показателей

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

Добавление и изменение состава показателей

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

 - позволяет добавлять, изменять или удалять сразу набор показателей.

 - добавляет показатели по одному.

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

На форме отображаются объекты мониторинга и их показатели. Удобнее всего выполнить поиск нужного вам элемента просто начав ввод с клавиатуры.

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

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

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

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

Видимость

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

Выделение

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

Вид серии

Колонка Вид серии задает внешний вид отображения данного показателя, всего возможно три варианта отображения.

Масштаб

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

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

Отбор

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

Агрегат

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

Это особенно удобно при анализе большого числе значений в единицу времени. Особенно удобно использовать агрегат при анализе счетчиков Performance monitor или данных сеанса.

Ниже рассмотрен пример использования агрегата.

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

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

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

Для каждой функции доступна группировка по нескольким периодам. Доступные периоды для всех функций одинаковы. Ниже приведены периоды для функции Максимум, но эти периоды одинаковы для всех функций.

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

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

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

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

На данном графике видно что всплеск до 200 секунд примерно наполовину вызван одним пользователем, предыдущие два всплеска практически полностью вызваны одни пользователем т.к. график максимум и суммы практически совпадает.

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

Профиль

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

Профиль выбирается в поле Профиль над таблицей показателей.

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

При открытии будет отображаться последний выбранный профиль.

Фильтр по дате и времени

Над таблицей показателей находится фильтр по времени со списком значений.

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

Используя кнопку  можно открыть окно выбора стандартного периода.

Также есть возможность задать отдельно фильтр по времени внутри заданного периода.

Это может быть полезно, если нужно отобрать данные только за рабочее время с 9:00 до 18:00 но например за неделю. Тогда внутри интервала равного неделе будет действовать дополнительный отбор по времени.

Выделение диапазона на графике

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

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

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

Расшифровка

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

Например, для данных сеанса это выглядит так.

Как правило сначала идет дата время, потом имя и значение показателя.

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

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

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

Такой же принцип расшифровки действует для всех показателей.

Анализ запросов

Анализ запросов выполняется на вкладке Запросы.

Для отображения запросов нужно обязательно выбрать период и базу. При необходимости можно использовать дополнительные фильтры нажав Доп. фильтр.

Кнопка Обновить - заполняет таблицы данными исходя из указанных фильтров.

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

Дерево запросов с группировкой

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

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

Контекст/запрос - последняя строка контекста и первые строки текста запроса. Внутри контекста запросы группируются по тексту.

Сек. - длительность запросов.

Кол. - количество запросов.

Среднее (сек.) - среднее время выполнения собранных запросов. Значение получается простым делением значения колонки Сек. на значение колонки Кол.

При выделении запроса в дереве, справа отображаются список запросов с данным контекстом и текстом запроса.

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

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

Чтобы отобразить скрытые запросы следует использовать контекстное меню, пункт Показать.

В контекстном меню Интерфейс, можно выбрать расположение текста запроса

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

Список и график запросов

При выборе текста запроса в дереве, заполняется таблица запросов.

Таблица запросов имеет следующие колонки:

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

Дата выполнения - дата завершения выполнения запроса.

Сек. - длительность запроса.

Пользователь - имя пользователя выполнившего запрос.

 - признак выполнения запроса в транзакции. В этом случае текст строки становится красным.

Стоимость - стоимость плана запроса. Заполняется только если включено получение плана запроса в настройках.

Выбрано строк Факт. - число строк которые вернул запрос.

Выбрано строк План. - число строк которые планировал вернуть запрос. Доступно только при использовании версии MS SQL 2012 и выше и указании инстанса.

Чтения Лог. - объем логических чтений (из памяти) при выполнении запроса. Доступно только при использовании версии MS SQL 2012 и выше и указании инстанса.

Чтения Физ. - объем физических чтений (с диска) при выполнении запроса. Доступно только при использовании версии MS SQL 2012 и выше и указании инстанса.

Ядра - число ядер задействованных запросом при выполнении. Доступно только при использовании версии MS SQL 2012 и выше и указании инстанса.

ЦП - процессорное время в секундах, затраченное одним ядром для выполнения запроса. Доступно только при использовании версии MS SQL 2012 и выше и указании инстанса.

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

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

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

Еще в контекстном меню доступно управление видимостью колонок и сортировка по текущей колонке.

Детали выполнения запроса

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

SQL - на данной странице отображается текст запроса SQL. Вверху доступны две команды.

Открыть в отдельном окне - открывает отдельное окно на весь экран с текстом запроса.

Подставить значения параметров - подставляет в текст запроса значения параметров вместо знака вопроса.

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

Если запрос был загружен в Монитор до загрузки метаданных, то можно получить текст в терминах 1С нажав Получить текст запроса в терминах 1С.

Контекст - полный контекст вызова запроса.

Параметры - значения параметров запроса, если они у него есть.

План - план запроса, который можно либо сохранить и открыть во внешней программе, либо открыть в программе по умолчанию. Если это план из MS SQL 2012 и выше, то его можно открыть в программе Sentry one plan explorer, либо в Management Studio.

Рекомендации - основные рекомендации по оптимизации запроса. Доступно только в платной версии, для получения рекомендации нужно нажать Получить рекомендации.

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

Дополнительно - прочие данные о выполнении запроса, часть из них выведена в таблицу, часть нет.

Перевод текста запроса SQL в термины 1С

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

Она открывает отдельное окно где нужно выбрать базу и ввести текст запроса SQL и получить текст запроса в терминах 1С.

Анализ ожиданий на блокировках

На вкладке Блокировке можно выполнить детальный анализ ожиданий на блокировках.

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

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

Возможны следующие значения группировки

Порядок элементов в имени группировке, определяет что будет на первом уровне, что на втором и т.д.

Если выбрано значение Таблица - Виновник - Жертва, то сначала все ожидания будут сгруппированы по таблице, на втором уровне по контексту виновника, на третьем уровне по контексту жертвы.

Дерево ожиданий на блокировках

Слева находится дерево блокировок, структура которого определяется выбранной группировкой.

Дерево блокировок имеет следующую структуру:

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

Имя группировки - заголовок колонки равен выбранному значению группировки. Здесь отображается объект группировки, таблица и контекст жертвы или виновника.

Сек. - длительность ожидания.

Кол. - количество ожиданий.

Таблица ожиданий на блокировках

При выборе строки в дереве блокировок, справа заполняется таблица с ожиданиями.

Таблица ожиданий имеет следующую структуру:

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

Дата ожидания - дата окончания ожидания.

Сек. - длительность ожидания.

СУБД - признак что ожидание происходило на блокировках СУБД.

 - признак ошибки по таймауту. В этом случае строка помечается красным.

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

Пользователь - ожидавший пользователь.

Диаграмма ожидания

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

Сверху отображаются виновники ожидания (если они определены) и режим блокировки. Снизу отображается жертва ожидания и ее режим.

В диаграмме отображена схема ожидания, разные цвета означают разные состояния:

синий - время удержания блокировки после того как она была установлена.

красный - время ожидания блокировки.

зеленый - время когда транзакция началась но блокировка еще не была установлена.

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

При наведении мышки на цветной отрезок, возникает всплывающая подсказка с основной информацией.

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

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

Детали блокировки

Детали отображаются для выбранной на диаграмме ожиданий блокировке.

На странице Сведения находятся следующие реквизиты:

Статус - статус блокировки, жертва, виновник или виновник и жертва. Жертва это блокировка которая ожидала, виновник - блокировка которую ожидали, виновник и жертва - блокировка которая сама ожидала и которую ожидали другие блокировки.

Режим - режим установленной блокировки.

Длительность ожидания - длительность ожидания в секундах, отображается только для жертвы.

Длительность удержания - длительность жизни блокировки после установки, отображается только для виновников.

Гранулярность - гранулярность блокировки, строка, страница или таблица. Если гранулярность отличается от строки, то поле выделяется цветом.

Пространство - пространство на которое была установлена блокировка 1С, отображается только для блокировок 1С.

Пользователь - пользователь вызвавший блокировку.

Компьютер - компьютер пользователя.

Номер соединения - номер соединения вызвавшего блокировку.

Страница Контекст содержит полный контекст вызова блокировки.

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

Страница 1C содержит данные в зависимости от типа блокировки. Для блокировок 1С там содержатся имена полей (в терминах 1С) и значений по которым была установлена блокировка. Для блокировок СУБД там содержится текст запроса в терминах 1С.

Страница Транзакция содержит сведения о транзакции данной блокировки.

Период с … по - даты начала и завершения транзакции.

Длительность - длительность транзакции в секундах.

Режим - режим блокировок в данной транзакции.

Статус - статус транзакции, была ли она завершена успешно или нет. В случае отката транзакции поле помечается красным.

Страница Рекомендации дает возможность получить основные рекомендации по оптимизации данного ожидания.

Анализ взаимоблокировок

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

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

Дерево взаимоблокировок

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

Дерево взаимоблокировок содержит следующие колонки:

Таблицы/Дата взаимоблокировки - таблицы которые учавствуют во взаимоблокировке и дата возникновения взаимоблокирвки.

Количество - число взаимоблокировок.

СУБД - признак что взаимоблокировка была на блокировках СУБД.

Ошибка параллелизма - признак что взаимоблокировка вызвана ошибкой работы механизма распараллеливания запроса.

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

Схема взаимоблокировки

Схема взаимоблокировки показывает каким именно образом образовалась взаимоблокировка.

На схеме показан порядок установки во времени и статус блокировок.

Схема состоит из следующих колонок:

Время - время установки блокировки

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

Для ожидающих блокировок указано какую именно транзакцию ожидали.

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

Детали блокировки

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

Детали блокировки состоят из следующих страниц:

Контекст и запрос - здесь содержатся контекст и текст запроса/детали блокировки. Контекст содержит полный контекст вызова блокировки.

SQL - для блокировки СУБД содержит текст SQL запроса. Для блокировки 1С содержит имя пространства блокировки, поля и значения по которым была установлена блокировка в терминах SQL.

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

Сведения - основные сведения о блокировке

Граф XML - содержит граф XML для блокировок СУБД. Для блокировок 1С страница недоступна.

Рекомендации - в полнофункциональной версии возможно получение основных рекомендаций по устранению данной взаимоблокировки.

Анализ ошибок тех. журнала

Анализ ошибок из технологического журнала выполняется на вкладке Ошибки.

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

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

Дерево ошибок

Дерево ошибок находится слева и состоит из следующих колонок:

% - процент числа ошибок данной категории среди всех категорий согласно фильтру.

Категория ошибки - категория ошибки, т.к. категории объединены в группы, то сначала выводится группа, потом ее категории.

Кол. - количество ошибок данной категории.

При выборе категории в дереве, справа в таблице отображаются ошибки данной категории.

Таблица ошибок

Таблица ошибок содержит следующие колонки:

Дата - дата возникновения ошибки.

Пользователь - пользователь от имени которого работал код когда произошла ошибка.

Первая строка ошибки - первая строка ошибки.

Сервер - имя сервера на котором произошла ошибка.

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

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

Детали ошибки

Данные об ошибках разделяются на три большие группы: текст, контекст и Доп. сведения.

Текст ошибки - страница содержит полный текст ошибки, а также дополнительные сведения.

Код исключения - код исключения из события EXCP технологического журнала.

Номер соединения - номер соединения в котором случилась ошибка.

Компьютер - компьютер пользователя.

Контекст - полный контекст ошибки, доступно только если контекст заполнен.

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

Анализ серверных вызовов

Анализ серверных вызовов (событие CALL технологического журнала) происходит на вкладке Серверные вызовы.

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

Группировка - определяет в каком виде будут отображаться данные. Возможны следующие значения.

Группировка всегда идет по контексту и выбранному значению.

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

Форма анализа состоит из трех больших блоков, таблицы контекстов, таблицы вызовов и деталей вызова.

Таблица контекстов

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

Дерево содержит следующие колонки:

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

Контекст - последняя строка контекста вызова.

Значение - значение выбранное в поле группировки. Заголовок колонки меняется в зависимости от выбранного значения.

Кол. - количество вызовов данного контекста.

При выборе строки контекста, справа отображаются вызовы данного контекста.

Таблица вызовов

Таблица вызовов отображает вызовы выбранного контекста.

Дата - дата окончания вызова.

Сек. - длительность вызова в секундах.

Пользователь - пользователь инициировавший серверный вызов.

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

Память Мб пиковое - значение свойства MemoryPeak события Call технологического журнала. Пиковое значение занятой но не освобожденной памяти за вызов.

Диск Мб прочитано - прочитано с диска за серверный вызов.

Диск Мб записано - записано на диск за серверный вызов.

Время CPU - время в секундах затраченное процессором на обработку серверного вызова.

Через контекстное меню есть возможность отсортировать таблицу по любой колонке.

При выборе вызова в таблице вызовов внизу отображается детальная информация по этому вызову.

Детали вызова

Детали вызова отображаются для выбранного в таблице вызова.

Дата начала вызова - дата начала серверного вызова.

Сервер - имя сервера куда пришел серверный вызов.

Компьютер - компьютер пользователя.

Приложение - приложение пользователя.

Контекст - полный контекст серверного вызова.

Анализ данных СУБД

Анализ данных СУБД производится на вкладке СУБД.

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

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

Слева на форме отображаются виды собранных данных, которые группируются по объектам СУБД. При выборе вида данных отображаются уже сами данные с подробностями.

Данные о файлах базы данных

Здесь содержатся сведения о файлах базы данных.

Логическое имя - логическое имя файла.

Имя файла - полный путь к файлу на диске.

Размер Гб - размер файла на диске в Гб.

Занято Гб - занятый объем внутри файла.

Свободно Гб - свободный объем внутри файла.

Файловая группа - файловая группа к которой принадлежит файла.

Состояние - состояние файла.

Автоувеличение - значение для автоматического увеличения объема файла, отображается в Гб или %, в зависимости от настройки в самой СУБД.

Средняя задержка операции записи мс. - средняя задержка при записи в этот файл. Большое значение может свидетельствовать о проблемах с диском.

Средняя задержка операции чтения мс. - средняя задержка при чтении из файла. Большое значение может свидетельствовать о проблемах с диском.

Количество операций записи - число операций записи в файл за время работы сервера.

Количество операций чтения - число операций чтения из файла за время работы сервера.

Основные сведения о базе данных

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

Модель восстановления - модель восстановления базы данных.

Рекомендуемый уровень совместимости - уровень совместимости данной версии MS SQL.

Асинхронное обновление статистики - состояние асинхронного обновления статистики.

Автоматическое обновление статистики - состояние автоматического обновления статистики.

Авто сокращение - автоматическое сокращение размера файла.

Размер Гб - общий размер базы данных.

Уровень совместимости - текущий уровень совместимости базы данных.

Дата создания - дата создания базы данных.

Степень распараллеливания - степень параллелизма, параметр MaxDOP.

Режим read_committed_snapshot - признак использования режима read_committed_snapshot.

Дата обновления конфигурации - дата последнего обновления конфигурации.

Колонка Есть рекомендация - признак что есть рекомендация по установке значения параметра.

Топ высокочастотных запросов

Самые частые запросы.

Запрос - текст запроса SQL.

Количество выполнений - число выполнений данного запроса с момента запуска сервера СУБД.

% CPU - нагрузка на процессор по сравнению с остальными выбранными запросами.

Среднее время - среднее время выполнения запроса.

% IO - нагрузка на диск по сравнению с остальными выбранными запросами.

SQL - полный текст запроса SQL.

- тест запроса в терминах 1С.

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

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

Топ запросов по диску

Запросы нагружающие диск.

Состав колонок и вид колонок совпадает с разделом Топ высокочастотных запросов.

Топ запросов по процессору

Запросы нагружающие процессор.

Состав колонок и вид колонок совпадает с разделом Топ высокочастотных запросов.

Данные об индексах

Раздел содержит информацию об индексах таблиц выбранной базы.

Метаданные - объект метаданных к которому относится таблица. Заполняется только если загружены метаданные.

Таблица - таблица объекта метаданных.

Индекс - имя индекса.

% фрагментации - процент фрагментации индекса.

Размер Мб - размер индекса.

Имя поля СУБД - имя поля таблицы СУБД которое входит в состав выбранного индекса.

Имя 1С - имя реквизита в терминах 1С.

Назначение - назначение данного реквизита.

Индексы с высокими издержками

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

Метаданные - объект метаданных к которому относится таблица. Заполняется только если загружены метаданные.

Таблица - таблица объекта метаданных.

Индекс - имя индекса.

Стоимость содержания - условная стоимость содержания индекса. Хранит значение с момента последнего перезапуска сервера СУБД.

Количество использований - сколько раз индекс использовался запросами. Хранит значение с момента последнего перезапуска сервера СУБД.

Неиспользуемые индексы

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

Метаданные - объект метаданных к которому относится таблица. Заполняется только если загружены метаданные.

Таблица - таблица объекта метаданных.

Индекс - имя индекса.

Общее использование - сколько раз индекс был использован.

Тип - тип индекса.

Количество операций поиска - сколько раз индекс был использован для поиска.

Количество сканирований - сколько раз индекс был просканирован.

Количество Lookup операций - сколько раз индекс был использован для Lookup операций.

Количество обновлений - сколько операций обновления было на этом индексе.

Рекомендуемые к созданию индексы

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

Метаданные - объект метаданных к которому относится таблица. Заполняется только если загружены метаданные.

Таблица - таблица объекта метаданных.

% выигрыша - условный процент на который возможно ускорятся запросы при добавлении этого индекса.

Ключевые поля - поля по которым нужно создать индекс.

Дата последнего поиска - дата последнего поиска по таблице.

Включенные поля - включенные поля индекса, не являются ключами индекса.

Команда создания индекса - команда выполнив которую в СУБД можно создать требуемый индекс.

Статистика ожиданий MSSQL

Таблица показывает статистику ожиданий всего сервера MS SQL (без разбивки по базам). Статистика ведется с момента перезапуска службы сервера MS SQL.

Тип ожидания - тип ожидания MS SQL.

% - процент длительности данного ожидания среди всех остальных ожиданий.

Время сек. - общее время простоя на данном ожидании

Количество - сколько раз возникал данный тип ожидания.

Среднее время ожидания - среднее время ожидания.

Описание данного типа ожидания - ссылка на сайт с подробным описанием выбранного типа ожидания.

Описание всех типов ожиданий - ссылка на документацию с описанием всех типов ожидания.

Данные о таблицах

В этом разделе содержится информация о таблицах выбранной базы.

Метаданные - объект метаданных к которому относится таблица. Заполняется только если загружены метаданные.

Таблица - таблица объекта метаданных.

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

Количество строк - количество строк в таблице.

Размер данных Мб - только размер данных в таблице.

Размер индексов Мб - только размер индексов.

Эскалация - возможность эскалации блокировок на этой таблице.

Дата создания - дата создания таблицы.

На вкладке Состав таблицы отображаются реквизиты объекта метаданных и имена полей таблицы которые им соответствуют.

На вкладке Индексы содержится информация по индексам таблицы.

Слева отображаются сами индексы, справа их состав.

Даты обновления статистики

В данном разделе отображаются данные о статистиках таблицы и датах ее последнего обновления.

Таблицу можно отсортировать по любой колонке с помощью контекстного меню.

Триггеры и уведомления

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

Что такое триггеры и алгоритмы?

Триггер определяет какие события и за какой период будет обрабатывать выбранный алгоритм. Алгоритм - это программа на языке 1С, которая обрабатывает данные события, проверяет условия и в случае необходимости выполняет какое-либо действие.

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

Настройки триггера

Триггеры находятся на вкладке Триггеры.

Активен - статус триггера, если флаг снят, то триггер не выполняется.

Наименование - имя триггера.

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

События

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

Именно события в дальнейшем и будут обрабатываться алгоритмами.

Каждое событие содержит в себе ссылку на объект породивший это событие. События Долгий запрос содержат ссылку на этот самый запрос, событие Взаимоблокировка, содержит ссылку на взаимоблокировку и т.п. Эта ссылка на объект события хранится в поле СвязанныйОбъект, которое активно используется в алгоритмах.

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

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

Триггер будет обрабатывать только те события на которые он подписан.

Действие

В разделе действия задаются параметры действия для обработки событий.

Обрабатывать события за последние … минут - за какой отрезок времени будут обрабатываться данные события. Минимально возможный интервал 1 минута.

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

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

Параметр алгоритма - описание параметра алгоритма.

Значение - значение параметра алгоритма.

Алгоритмы

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

Наименование - уникальное имя алгоритма. Имя не должно повторятся.

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

Параметры - имена, типы и описания параметров алгоритма.

Программный код/Описание - вид данных выводимых на экран.

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

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

Таблица событий

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

Чаще всего используется реквизит СвязанныйОбъект, который содержит ссылку на объект события. Тип колонки СвязанныйОбъект зависит от того, на какие события подписан триггер данного алгоритма.

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

Алгоритм

В алгоритме прописаны условия, если они выполняются, то выполняется какое-либо действие, например, отправляется уведомление.

Все алгоритмы сопровождаются подробными комментариями и пояснениями.

При желании можно написать свой собственный алгоритм по аналогии.

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

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

Из одного алгоритма можно вызвать другой с помощью команды Исполнить. Например, если нужно отправить уведомление, то можно использовать код:

 СообщениеОтправлено = Исполнить("Отправить сообщение", ТемаСообщения, ТекстСообщения);

Первым параметром идет имя алгоритма, далее через запятую его параметры.

Список алгоритмов и пример их вызова можно посмотреть в Синтаксис-помощнике на вкладке Алгоритмы.