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

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

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

Предварительная настройка Технологического журнала

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

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

⚠️ Внимание: Включение полного логирования всех событий (уровень debug) на рабочей базе в рабочее время категорически запрещено. Это гарантированно приведет к остановке работы пользователей из-за нагрузки на дисковую подсистему.

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

💡

Используйте утилиту rac (1C:Enterprise Remote Administration Center) для управления настройками ТЖ на кластере серверов без необходимости перезапуска служб.

Создание элемента навигации в Такси и Такси-NG

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

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

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

  • 🛠️ Создайте новую роль "Администратор ТЖ" в конфигураторе.
  • 🔒 Назначьте права на чтение и выполнение внешних обработок только для этой роли.
  • 👁️ В свойствах пункта меню укажите условие: Пользователь.ВРоли("АдминистраторТЖ").
📊 Какой интерфейс 1С вы используете чаще всего?
Такси (желтый)
Такси-NG (серый)
Такси-NG (темный)
Интерфейс 8.2/8.3

Разработка внешней обработки для просмотра логов

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

Вы можете написать обработку самостоятельно, используя объект ЧтениеТекста для построчного чтения файлов из каталога логов. Альтернативный вариант — использовать готовые решения от сообщества или партнеров фирмы "1С", которые часто имеют более продвинутый функционал фильтрации.

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

Функция ПолучитьПутьКЛогам()

// Пример получения пути из настроек администрирования

Возврат ПараметрыПодключенияСервера1С.КаталогПрограммы + "Log";

КонецФункции

Оптимизация чтения больших файлов

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

Настройка прав доступа и безопасность

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

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

Роль пользователя Доступ к меню Права на файлы ТЖ Рекомендация
Полные права Есть Чтение/Запись Разрешено
Администратор системы Есть Чтение Разрешено
Главный бухгалтер Нет Нет Запрещено
Менеджер Нет Нет Запрещено

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

Автоматизация включения и выключения логирования

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

Реализовать это можно через обработку, которая модифицирует файл logcfg.xml или использует COM-соединение с объектом V83.COMConnector для управления настройками на лету. Пользователь нажимает кнопку "Включить анализ", система пишет лог 5 минут, затем автоматически отключает его.

☑️ Чек-лист перед включением ТЖ

Выполнено: 0 / 4

⚠️ Внимание: Интерфейсы и возможности управления кластером серверов могут различаться в зависимости от версии платформы 1С (8.3.10, 8.3.20 и новее). Всегда сверяйте доступные методы в синтаксическом помощнике вашей конкретной версии.

Анализ полученных данных и типичные ошибки

После того как ссылка добавлена и логи собраны, начинается этап анализа. Самая частая ошибка новичков — попытка искать проблему во всем файле сразу. Необходимо фильтровать события по длительности выполнения (duration) и типу события.

Обращайте внимание на события типа DBMSSQL или DBMSServer, которые показывают время выполнения запросов на стороне СУБД. Если время выполнения запроса велико, а время обработки на стороне 1С мало, проблема кроется в индексах базы данных или статистике SQL-сервера.

Также стоит анализировать события блокировок (Lock). Частые блокировки указывают на проблемы в архитектуре приложения, когда пользователи мешают друг другу записывать данные в одни и те же регистры. В таком случае ссылка на анализ становится инструментом для рефакторинга кода.

💡

Эффективный анализ ТЖ возможен только при корреляции событий времени сервера и времени клиента. Убедитесь, что часы на всех серверах кластера синхронизированы через протокол NTP.

Часто задаваемые вопросы (FAQ)

Где физически хранятся файлы технологического журнала?

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

Можно ли смотреть ТЖ из толстого клиента?

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

Влияет ли включение ТЖ на скорость работы базы?

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

Как очистить старые файлы логов автоматически?

Платформа 1С не удаляет старые файлы автоматически. Для этого необходимо настроить задачу в планировщике заданий Windows (Task Scheduler) или cron на Linux, которая будет запускать скрипт удаления файлов старше определенной даты.