Статья
Анализ роста сеансовых данных
Пример
Закончилось дисковое пространство на сервере 1С. При анализе выяснилось, что значительно увеличился размер каталога сеансовых данных. Необходимо выяснить причину роста сеансовых данных.
Сеансовые данные это некое хранилище временной информации, которая необходимая для работы сеанса. Например, методы: ПоместитьВоВременноеХранилище, ПоместитьФайл, НачатьПомещениеФайла используют сеансовые данные.
При фоновом выполнении отчетов СКД, результат так же помещается в сеансовые данные, и только после этого передается клиенту.
Фактически сеансовые данные это файлы в каталоге \srvinfo\reg_<Порт кластера>\snccntx<GUID>.
Платформа регулярно обращается к этим данным, поэтому очень важно что бы диск на котором расположен каталог snccntx был достаточно быстрым.
В большой информационной системе объем сеансовых данным может быть очень существенным, в крайних случаях занять все свободное место на диске.

Для анализа подобных ситуаций используется показатель Серверный вызов. При этом желательно установить фильтр на поле "Записано на диск Мб" выше нуля. Фильтр нужен чтобы отсечь те события, при обработке которых не было записи на диск, либо была запись незначительного объема.
Настройки показателя: Серверный вызов
При такой настройке в технологическом журнале будут фиксироваться все события CALL у которых свойство OutBytes >= 1 Мб, т.е. будут фиксироваться все серверные вызовы, которые что-то существенное записывали в сеансовые данные.

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

Иногда бывает полезно понять кто из пользователей больше всего пишет в сеансовые данные, в таком случае удобнее использовать отчет Серверные вызовы, вариант Пользователи с сортировкой по Записано Мб.
Пример отчета
Показатель Серверный вызов может отслеживать записываемый объем только в рамках одного серверного вызова, но зачастую полезно отследить сколько было записано на диск за все вызовы в рамках одного сеанса пользователя. Для этих целей подойдет показатель Сеанс: Записано на диск (всего) Мб из группы показателей Данные сеанса.
Этот показатель берет данные из консоли кластера, а именно из колонки Запись (всего), которая содержит накопительное значение записанного на диск объема данных с момента начала сеанса.
Настройки показателя: Данные сеанса
На графике можно увидеть динамику изменения этого показателя, а также понять кто из пользователей создает нагрузку. Следует помнить, что значение показателя на графике суммарное для всех сеансов, но при клике по точке, появляется расшифровка в разрезе пользователей.
График показателя
Задача:
Необходимо настроить уведомление, если какой-то сеанс за время своей работы записал на диск более 100 Мб.

Решение:
Для начала заполним настройки уведомлений, чтобы иметь возможность получать сообщения от Монитора.
Монитор может отправить сообщение по почте либо в Телеграм, либо сразу по обоим каналам.
Соответствующие параметры указываются в разделе Настройки - Уведомления.
Подробности по настройке уведомлений описаны в документации.
Настройка параметров уведомлений
Далее включаем триггер Сеанс записал на диск более 100 Мб. и настраиваем его как на картинке ниже.
Настройка триггера
Разберем основные настройки:
Активен - признак что триггер используется.
Подписка на события - события какого показателя будем анализировать, в данном случае Данные сеанса.
Обрабатывать события за последнюю ... минуту - размер временного окна за который будут обрабатываться события.
Пороговое значение - значение при превышении которого будет выслано уведомление.
Показатель сеанса - отслеживаемый показатель значение которого будет анализироваться.
Период повторного уведомления - определяет когда повторно отправлять уведомление если показатель не пришел в норму.

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

Таким образом можно относительно просто узнать кто именно оказывает наибольшую нагрузку на запись в каталог сеансовых данных.
Анализ показателей "Серверный вызов" и "Сеанс: Записано (всего) Мб.", описанных в данной статье, доступен в бесплатной версии Монитора.
Подпишитесь на наш канал в Telegram чтобы не пропускать новые материалы
Если вы хотите поделиться своим кейсом, напишите нам на support@1smonitor.ru