Чистим журнал регистрации 1С 8.3: от кнопки «Сократить» до удаления файлов на сервере
Содержание
Удалить журнал регистрации
в 1С 8.3 проще всего штатно: откройте базу в Конфигураторе, выберите Администрирование → Настройка журнала регистрации и нажмите Сократить. Укажите дату — всё, что старше, будет удалено, а при желании сохранено в отдельный файл. Если база не открывается или журнал разросся до десятков гигабайт, его можно удалить вручную: это папка 1Cv8Log в каталоге базы или в каталоге кластера на сервере.
Частое заблуждение — что в клиент-серверной базе журнал лежит в SQL. Нет: в 8.3 он хранится файлами на сервере 1С, а не в MS SQL или PostgreSQL. Чистить таблицы СУБД бесполезно и опасно. Ниже порядок действий для обоих вариантов работы.
Что хранит журнал регистрации и почему он растёт
Журнал регистрации — это история событий базы: входы и выходы пользователей, запись и удаление объектов, ошибки, работа регламентных заданий, обновления конфигурации. По нему отвечают на вопросы «кто удалил документ» и «почему не прошёл обмен».
Учётные данные в журнале не хранятся. Удаление журнала не трогает документы, справочники и остатки. Пропадает только история: кто, когда и что сделал.
Где лежат файлы
| Вариант работы | Где искать журнал |
|---|---|
| Файловая база | <каталог базы>\1Cv8Log — рядом с файлом 1Cv8.1CD |
| Сервер 1С на Windows | <каталог srvinfo>\reg_1541\<GUID базы>\1Cv8Log |
| Сервер 1С на Linux | /home/usr1cv8/.1cv8/1C/1cv8/reg_1541/<GUID базы>/1Cv8Log |
Каталог файловой базы видно в окне запуска: выделите базу — путь показан внизу окна. Каталог srvinfo задаётся при установке сервера. Для службы, установленной по умолчанию на Windows, это обычно C:\Program Files\1cv8\srvinfo.
Два формата журнала
По расширению файлов сразу понятно, с каким форматом вы работаете:
- 📄 Последовательный (текстовый) формат — файл
1Cv8.lgf(словарь: пользователи, компьютеры, метаданные) и набор файлов*.lgpс самими событиями. Каждый.lgp— отдельный период. - 🗄 Формат SQLite — один файл
1Cv8.lgd. Внутри — база SQLite со всеми событиями сразу.
От формата зависит, можно ли удалять старые события по одному файлу, без остановки работы. С .lgp — можно, с .lgd — только целиком.
Почему журнал разрастается
- 🔁 Уровень регистрации «Регистрировать все события» — пишется каждая запись объекта.
- ⚙️ Регламентное задание или обмен, который падает с ошибкой каждую минуту.
- 📅 Журнал не разделён на периоды и копится годами одним массивом.
- 🧩 Доработка, которая пишет свои сообщения через
ЗаписьЖурналаРегистрации()в цикле.
Журнал на 20–50 ГБ при базе в 5 ГБ — обычная картина для базы, которую не обслуживали несколько лет.
Что сделать до очистки журнала
Перед удалением решите главное: нужна ли вам эта история. Её запрашивают при внутренних расследованиях, спорах с сотрудниками, разборе сбоев обмена. Восстановить удалённый журнал без копии нельзя.
- Скопируйте папку
1Cv8Logцеликом на другой диск или в архив. Текстовые.lgpхорошо сжимаются, архив будет в разы меньше. - Проверьте свободное место. При сокращении с сохранением в файл платформе нужно место под этот файл.
- Выберите время. Для ручного удаления файлов база должна быть свободна от пользователей — планируйте на вечер или выходной.
- Запишите текущие настройки журнала (уровень регистрации и разделение на периоды), чтобы вернуть их после очистки.
Если нужна не вся история, а только события по конкретному документу или пользователю — сначала отберите их в журнале и выгрузите. Это займёт минуты, а после очистки такой возможности уже не будет.
Способ 1. Штатное сокращение журнала регистрации в Конфигураторе
Это безопасный путь. Платформа сама удаляет события до указанной даты и не ломает структуру файлов. Работает и для файловой, и для серверной базы.
Пошагово
- Запустите базу в режиме Конфигуратор под пользователем с правами администратора.
- Откройте
Администрирование → Настройка журнала регистрации. - Нажмите кнопку
Сократить. - В поле даты укажите границу: события раньше этой даты будут удалены.
- Если история может понадобиться — включите сохранение удаляемых событий в файл и укажите путь.
- Нажмите
ОКи дождитесь окончания. На журнале в десятки гигабайт это может занять больше часа.
Монопольный режим для сокращения не нужен — пользователи могут продолжать работать. Но на большом журнале операция заметно нагружает диск, поэтому лучше запускать её вне рабочего времени.
Какую дату выбрать
| Ситуация | Разумная граница |
|---|---|
| Небольшая фирма, проверок по журналу не бывает | оставить 3–6 месяцев |
| Обычная бухгалтерия с закрытием периодов | оставить текущий и прошлый год |
| Есть внутренний контроль или споры с персоналом | оставить столько, сколько требует ваш регламент, остальное — в архив-файл |
Если журнал SQLite не уменьшился
Сокращение удаляет записи, но размер файла 1Cv8.lgd на диске может уменьшиться не сразу или не так сильно, как ожидалось. В таком случае рабочий вариант — сократить журнал с сохранением в файл, а затем при свободной базе удалить 1Cv8.lgd целиком (см. следующие разделы). Платформа создаст новый пустой файл при первом событии.
Способ 2. Ручное удаление журнала в файловой базе
Подходит, когда Конфигуратор не открывается из-за переполненного диска или когда журнал настолько большой, что сокращение идёт часами.
- Попросите всех пользователей выйти из базы. Проверьте, что в каталоге базы нет файлов блокировки сеансов от зависших подключений, и что процессы
1cv8.exe/1cv8c.exeна компьютерах с доступом к базе закрыты. - Откройте каталог базы и найдите папку
1Cv8Log. - Перенесите её содержимое в архив (или удалите, если история не нужна).
- Саму папку
1Cv8Logоставьте — пустую. - Запустите базу. Платформа создаст новый журнал в формате, который задан для этой базы.
Не удаляйте файлы из каталога базы, кроме содержимого 1Cv8Log. Особенно 1Cv8.1CD — это и есть ваша база данных.
Частичная очистка в текстовом формате
Если журнал разделён на периоды и лежит в файлах .lgp, можно удалить только старые файлы, не трогая свежие. Имя файла содержит дату и время начала периода, например 20230101000000.lgp.
- ✅ Удалять старые
.lgpможно. - ❌ Удалять
1Cv8.lgf, оставив.lgp, нельзя: без словаря оставшиеся события потеряют имена пользователей, компьютеров и объектов.
В файловой базе такую частичную очистку тоже лучше делать, когда в базе никто не работает .
Способ 3. Очистка журнала регистрации в клиент-серверной базе
Как уже сказано, в серверном варианте журнал — это файлы на сервере 1С. В базе MS SQL или PostgreSQL его нет. Значит, ни запросы DELETE, ни сжатие базы СУБД на размер журнала не влияют. Сначала попробуйте штатное сокращение из Конфигуратора (способ 1). Если нужно удалить файлы — порядок ниже.
Как найти папку нужной базы
В каталоге reg_1541 лежат папки с именами-идентификаторами (GUID) — по одной на каждую базу кластера. Чтобы понять, какая из них ваша:
- откройте файл
1CV8Clst.lstв каталогеreg_1541блокнотом и найдите имя базы — рядом с ним стоит её GUID; - или выполните на сервере
rac infobase summary list --cluster=<id кластера>— команда выведет идентификатор и имя каждой базы (id кластера покажетrac cluster list).
Перепутать GUID легко, если на сервере десяток баз с похожими именами. Сверьте имя базы дважды, прежде чем удалять.
Удаление файлов журнала
- Предупредите пользователей и выберите окно обслуживания.
- Остановите службу «Агент сервера 1С:Предприятия 8.3» (на Linux — соответствующий сервис
srv1cv8). Все сеансы на этом сервере, во всех базах, будут оборваны, несохранённые данные пользователи потеряют. - Перейдите в
reg_1541\<GUID базы>\1Cv8Log. - Перенесите содержимое в архив или удалите.
- Запустите службу и проверьте, что база открывается и в журнале появились новые события.
Если журнал в текстовом формате и разделён на периоды, старые .lgp за прошлые периоды обычно удаляются и без остановки службы: рабочий процесс держит открытым только текущий файл. Если Windows сообщает, что файл занят, — это текущий период, его не трогайте.
Сравнение способов
| Способ | Когда подходит | Риски |
|---|---|---|
Сократить в Конфигураторе | базовый вариант, база работает | долго на больших журналах |
Удаление старых .lgp | текстовый формат с разделением на периоды | удалить .lgf по ошибке |
Удаление всей папки 1Cv8Log | журнал огромный, нужен результат сразу | простой работы, потеря всей истории |
Как настроить журнал, чтобы он не разрастался снова
Удалить журнал один раз мало. Без настройки через год вы вернётесь к той же проблеме.
Уровень регистрации и разделение на периоды
В том же окне Администрирование → Настройка журнала регистрации есть две важные настройки:
- Уровень регистрации. Для большинства баз достаточно «Регистрировать ошибки, предупреждения, информацию и примечания». «Все события» включайте временно, на время расследования.
- Разделение журнала на периоды (для текстового формата). Разделение по месяцам или по дням превращает журнал в набор небольших файлов, которые легко удалять по одному.
Сокращение по расписанию из командной строки
Сократить журнал можно и без открытия Конфигуратора вручную — пакетным запуском. Параметр /ReduceEventLogSize принимает дату в формате ГГГГ-ММ-ДД, а ключ -saveAs сохраняет удаляемые события в файл:
"C:\Program Files\1cv8\8.3.24.1586\bin\1cv8.exe" DESIGNER /S "srv1c\buh" /N "Администратор" /P "пароль" /ReduceEventLogSize 2025-01-01 -saveAs "D:\LogArchive\buh_log.lgd" /Out "D:\LogArchive\reduce.log"
Для файловой базы вместо /S "сервер\база" укажите /F "D:\Bases\Buh". Номер платформы в пути замените на свой. Полный список параметров — в справке по параметрам командной строки, которую выводит сама платформа.
Такой .bat ставят в Планировщик заданий Windows раз в месяц. Дату границы удобнее вычислять в скрипте (например, «сегодня минус 180 дней»), а не прописывать руками.
Пароль администратора в .bat хранится открытым текстом. Ограничьте доступ к файлу и заведите для обслуживания отдельного пользователя 1С.
Удаление старых файлов скриптом
Для текстового формата с разделением на периоды подойдёт короткий скрипт PowerShell. Он удаляет файлы .lgp старше 180 дней и не трогает словарь 1Cv8.lgf:
$log = "C:\Program Files\1cv8\srvinfo\reg_1541\<GUID базы>\1Cv8Log"
Get-ChildItem -Path $log -Filter *.lgp |
Where-Object { $_.LastWriteTime -lt (Get-Date).AddDays(-180) } |
Remove-Item
Перед включением в расписание запустите вторую и третью строки без Remove-Item — увидите, какие файлы попадут под удаление.
А как же регламентные задания 1С
В типовых конфигурациях на БСП (Бухгалтерия 3.0, ЗУП 3.1, УТ 11) нет регламентного задания, которое удаляет журнал регистрации. Журнал можно просматривать в разделе Администрирование → Обслуживание (в старых релизах — «Поддержка и обслуживание»), но чистится он средствами платформы — Конфигуратором, командной строкой или скриптом ОС.
Зато регламентные задания часто и есть причина роста журнала. Отберите в журнале события с уровнем «Ошибка» за последний день: если одно и то же задание падает каждые несколько минут, почините или отключите его — иначе журнал снова наберёт гигабайты.