К статье
Практический материал

Администрирование · 12 мин

Где хранятся логи сервера 1С и как их найти

Где хранятся логи сервера 1С: каталоги srvinfo и reg_1541, технологический журнал, журнал регистрации, логи СУБД. Пути в Windows и Linux, настройка и поиск ошибок.

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

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

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

Какие журналы вообще есть у сервера 1С

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

  • Служебные файлы кластера (srvinfo) — рабочий каталог агента сервера, где хранится реестр кластера (файлы вида 1CV8Clst.lst), списки информационных баз, сеансов и часть диагностической информации самого сервера приложений.
  • Технологический журнал (ТЖ) — детальный лог всех событий платформы: запросы к СУБД, вызовы сервера, ошибки, взаимоблокировки, дампы при аварийном завершении. По умолчанию отключён, включается через logcfg.xml.
  • Журнал регистрации — журнал событий информационной базы (входы пользователей, изменение данных, ошибки прикладного кода). Хранится вместе с базой, а не с сервером.
  • Логи СУБД — журналы MS SQL Server, PostgreSQL или другой СУБД: ошибки соединений, блокировки, медленные запросы.
  • Журналы операционной системы — «Просмотр событий» Windows (Application и System) или syslog/journald в Linux фиксируют старт и падение службы сервера 1С.

Диагностика всегда начинается с вопроса «что именно произошло»: ошибку прикладного кода ищут в журнале регистрации, падение сервера — в логах ОС и дампах ТЖ, медленную работу — в ТЖ и логах СУБД.

Каталог srvinfo: главная папка сервера 1С

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

Пути в Windows

При стандартной установке сервера 1С как службы Windows каталог кластера находится по одному из путей:

  • C:\Program Files\1cv8\srvinfo — типичный вариант для 64-разрядной версии платформы;
  • C:\Program Files (x86)\1cv8\srvinfo — для 32-разрядной версии;
  • в ряде конфигураций — внутри каталога конкретной версии платформы или в профиле служебной учётной записи (например, C:\Program Files\1cv8\srvinfo с подкаталогом вида reg_1541).

Внутри srvinfo находится подкаталог reg_1541 (номер соответствует порту агента сервера — по умолчанию 1541). Там лежат файлы реестра кластера: 1CV8Clst.lst (список баз кластера), 1CV8Clsto.lst, каталоги с данными сеансов. Эти файлы — не текстовые логи в привычном смысле, а служебные данные, но именно здесь можно проверить, какие базы зарегистрированы на сервере.

Пути в Linux

В Linux рабочий каталог сервера обычно располагается по адресу /var/1cv8 или /opt/1cv8/x86_64/<версия>/ — в зависимости от дистрибутива и скрипта установки. Внутри также будет подкаталог вида reg_1541 с файлами реестра кластера.

bash
ls -la /var/1cv8/reg_1541/

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

Технологический журнал — основной инструмент диагностики, но по умолчанию платформа его не пишет. Чтобы ТЖ начал формироваться, нужно создать конфигурационный файл logcfg.xml и положить его в каталог conf рядом с исполняемыми файлами платформы:

  • Windows: C:\Program Files\1cv8\<версия>\bin\conf\logcfg.xml;
  • Linux: /opt/1cv8/x86_64/<версия>/conf/logcfg.xml.

Каталог, куда будут складываться файлы ТЖ, задаётся внутри самого logcfg.xml в элементе <log location="...">. Если каталог не указать, журнал по умолчанию пишется в подкаталог logs внутри каталога служебных данных (для Windows это обычно профиль служебной учётной записи, под которой работает служба, либо каталог вида %APPDATA%\1C\1cv8\logs для клиентских процессов).

Минимальный пример logcfg.xml, включающий запись ошибок и событий СУБД:

<config xmlns="http://v8.1c.ru/v8/tech-log">

<log location="D:\1clogs" history="24">

<event><eq property="name" value="EXCP"/></event>

<event><eq property="name" value="DBMSSQL"/></event>

<property name="all"/>

</log>

<dump create="true" location="D:\1clogs\dumps"/>

</config>

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

Журнал регистрации информационной базы

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

Для файловой базы журнал хранится в каталоге базы: либо как файл 1Cv8Log\1Cv8.lgd (старый формат), либо в формате SQLite (каталог 1Cv8Log с файлом 1Cv8.lgd в новом формате). Для клиент-серверной базы журнал физически находится внутри самой базы данных СУБД — отдельного файла на диске сервера 1С нет.

Просматривать журнал регистрации удобнее всего штатными средствами:

  • в режиме «1С:Предприятие» — через раздел администрирования (в типовых конфигурациях — «Администрирование → Обслуживание → Журнал регистрации»);
  • в конфигураторе — меню «Администрирование → Журнал регистрации» с фильтрами по пользователю, периоду, типу события и уровню важности;
  • программно — методом ВыгрузитьЖурналРегистрации() для выгрузки в XML или текст с последующим разбором.

Уровень детализации журнала настраивается в конфигураторе: «Администрирование → Настройка журнала регистрации». Можно отключить регистрацию малозначимых событий, чтобы журнал не разрастался, но полностью отключать его не стоит — это единственный штатный способ узнать, кто и когда изменил данные.

Логи СУБД и операционной системы

Значительная часть ошибок, которые выглядят как «проблема сервера 1С», на самом деле фиксируется на уровне СУБД или ОС.

MS SQL Server

Журнал ошибок SQL Server находится в каталоге экземпляра, обычно C:\Program Files\Microsoft SQL Server\MSSQL<номер>.<имя>\MSSQL\Log\ERRORLOG. Там фиксируются разрывы соединений, взаимоблокировки (deadlock), нехватка памяти. Тот же журнал доступен из SQL Server Management Studio: «Management → SQL Server Logs».

PostgreSQL

В PostgreSQL каталог логов задаётся параметром log_directory в postgresql.conf; типовые пути — /var/lib/pgsql/<версия>/data/log/ (Linux) или подкаталог data\log в каталоге установки (Windows). Именно здесь видны ошибки подключений от сервера 1С, медленные запросы (если включён log_min_duration_statement) и взаимоблокировки.

Журналы ОС

В Windows откройте «Просмотр событий» (eventvwr.msc), раздел «Журналы Windows → Приложение» и «Система»: здесь видны старт и аварийная остановка службы «Агент сервера 1С:Предприятия», ошибки приложения rphost.exe. В Linux используйте journalctl -u <имя службы> или файлы в /var/log.

Маршрут решения

Как выбрать действие

Пользователь сообщает об ошибке в конкретной базе (проведение документа, отчёт)Смотрите журнал регистрации базы через конфигуратор или режим предприятия
Сервер 1С перезапускается, сеансы обрываются у всех пользователейПроверяйте журналы ОС (Просмотр событий / journalctl) и дампы в каталоге ТЖ
База «тормозит», запросы выполняются долгоВключите ТЖ с событиями DBMSSQL/DBPOSTGRS и TLOCK, параллельно смотрите логи СУБД
Нужно узнать, какие базы зарегистрированы на сервереОткройте консоль кластера или файл 1CV8Clst.lst в каталоге srvinfo\reg_1541

Как искать нужное событие и не утонуть в объёме

Файлы технологического журнала на активном сервере достигают гигабайтов, поэтому открывать их в «Блокноте» бессмысленно. Практичный подход выглядит так:

  1. Сузьте временное окно: попросите пользователя назвать точное время ошибки с точностью до минуты.
  2. Фильтруйте по имени события: EXCP (исключения), TLOCK и TDEADLOCK (блокировки), CLSTR (события кластера), DBMSSQL/DBPOSTGRS (запросы к СУБД).
  3. Используйте поиск по тексту: в Windows — findstr, в Linux — grep по каталогу ТЖ с указанием временной метки или текста ошибки.
  4. Для регулярного анализа применяйте специализированные средства разбора ТЖ (штатные скрипты на встроенном языке 1С или сторонние парсеры), а не ручное чтение.
bash
grep -r "EXCP" /var/1clogs/ --include="*.log" | tail -50

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

Типичные ошибки
01
Включение полного ТЖ без ограничения history — диск заполняется, сервер встаёт из-за нехватки места
02
Поиск ошибок прикладного кода в srvinfo — там только служебные данные кластера, ошибки пользователей ищите в журнале регистрации
03
Размещение logcfg.xml не в том каталоге conf — платформа просто не видит файл, и ТЖ не создаётся
04
Удаление файлов 1CV8Clst.lst в srvinfo «для очистки» — это приводит к потере регистрации баз в кластере
05
Игнорирование логов СУБД — взаимоблокировки и разрывы соединений видны именно там, а не в журнале регистрации

Частые вопросы

Где лежат логи сервера 1С, если сервер установлен не по умолчанию?

Откройте свойства службы «Агент сервера 1С:Предприятия» в Windows (или unit-файл в Linux) и посмотрите параметры запуска: ключ -d указывает рабочий каталог кластера. Именно там находятся srvinfo и reg_1541, независимо от того, куда установлена сама платформа.

Почему каталог logs пуст, хотя logcfg.xml создан?

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

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

Да, файлы ТЖ — это обычные текстовые логи, их можно удалять и архивировать. Лучше задать параметр history в logcfg.xml, чтобы платформа удаляла устаревшие файлы сама. Не удаляйте при этом содержимое srvinfo — там служебные данные кластера.

Где искать причину аварийного завершения rphost.exe?

Сначала — журнал «Приложение» в Просмотре событий Windows (или journalctl в Linux), затем дампы аварийного завершения, если включён элемент dump в logcfg.xml. Дампы и описание ошибки из журнала ОС — основной материал для обращения в поддержку.

Журнал регистрации разросся и тормозит базу — что делать?

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

Видны ли в логах пароли пользователей?

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

Итог

Что важно запомнить

Логи сервера 1С распределены: служебные данные кластера — в srvinfo\reg_1541, детальная диагностика — в технологическом журнале (включается через logcfg.xml), прикладные события — в журнале регистрации базы, ошибки соединений и блокировки — в логах СУБД и ОС. Начинайте поиск с типа проблемы, а не с перебора всех файлов, и всегда ограничивайте объём технологического журнала.