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

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

Журнал транзакций 1С: что это и как его использовать

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

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

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

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

Что такое журнал транзакций и зачем он нужен

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

Практические задачи, которые решает журнал:

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

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

Где находится журнал транзакций в 1С 7.7

В файловой версии 1С:Предприятие 7.7 журнал транзакций — это файл 1Cv7.log, расположенный в корневом каталоге информационной базы, рядом с файлами 1Cv7.DBA, 1Cv7.MD и служебными таблицами. Если база размещена на сетевом диске, файл лежит в общей папке, и к нему обращаются все пользователи, работающие с этой базой.

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

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

Чем журнал транзакций отличается от журнала регистрации

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

КритерийЖурнал транзакций (1С 7.7)Журнал регистрации (1С 8)
НазначениеЦелостность и восстановление данныхПротоколирование событий и аудит
Что фиксируетИзменения данных в рамках транзакцийВходы, ошибки, изменения данных, фоновые задания
ФорматФайл 1Cv7.log, внутренний форматСобственный формат платформы (lgd/lgp) или СУБД
ПросмотрСторонние утилиты и обработкиШтатно из конфигуратора или режима предприятия
Влияние на работу базыУчаствует в загрузке и восстановленииНа целостность данных не влияет

В 1С:Предприятие 8 механизм транзакций реализован на уровне платформы и СУБД (в клиент-серверном варианте журнал транзакций ведёт сама СУБД — например, transaction log в MS SQL Server), а журнал регистрации взят на себя роль аудита. Поэтому, если вы работаете с восьмой версией, искать отдельный файл «журнала транзакций 1С» в каталоге базы не нужно.

Как просмотреть и проанализировать журнал транзакций

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

Порядок анализа журнала
  1. 1
    Сделайте копию файла 1Cv7.log при монопольном доступе к базе или в момент, когда пользователи не работают
  2. 2
    Откройте копию файла специализированной обработкой просмотра журнала транзакций
  3. 3
    Установите фильтр по интересующему периоду, пользователю или типу объекта
  4. 4
    Найдите записи об изменении нужного документа или справочника и зафиксируйте время и автора
  5. 5
    Сопоставьте найденные события с данными самой базы, чтобы подтвердить результат

Типовые сценарии, где анализ журнала реально помогает:

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

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

Диагностика момента сбоя

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

Анализируйте всегда копию журнала, а не рабочий файл. Открытие 1Cv7.log сторонними средствами во время работы пользователей может привести к ошибкам доступа и сбоям в работе базы.
ПЗ
Практическое замечание

Очистка и усечение журнала: когда можно и когда опасно

Со временем вопрос очистки журнала встаёт перед каждым администратором 7.7: файл разрастается, занимает место и может замедлять операции. Усекать журнал допустимо, но только при соблюдении условий: база должна быть в целостном состоянии, архивная копия — создана, а доступ пользователей — закрыт на время операции.

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

Типичные ошибки
01
Удаление 1Cv7.log через проводник без копии — при повреждённых таблицах теряется последний шанс восстановить изменения
02
Усечение журнала при работающих пользователях — файл занят, итогом становятся ошибки доступа и рассинхронизация
03
Игнорирование роста файла до переполнения диска — ошибки записи в журнал ведут к аварийному завершению транзакций
04
Попытка править журнал вручную — внутренний формат не рассчитан на ручное редактирование, файл станет нечитаемым

Журнал транзакций в 1С 8: что использовать вместо него

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

В клиент-серверном варианте целостность транзакций обеспечивает СУБД: у MS SQL Server, PostgreSQL и других поддерживаемых систем есть собственные журналы транзакций на уровне базы данных. Их обслуживание — зона ответственности администратора СУБД: настройка модели восстановления, регулярное резервное копирование журнала, контроль его размера.

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

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

База на 1С 7.7, нужно узнать, кто изменил документСнимите копию 1Cv7.log и проанализируйте её обработкой просмотра журнала транзакций
База на 1С 8, нужен аудит действий пользователейОткройте журнал регистрации в конфигураторе и настройте отбор по событию изменения данных
Клиент-серверная база, подозрение на потерю данных после сбояПроверяйте журналы СУБД и последние резервные копии, а не файлы каталога 1С
Файл журнала занял слишком много местаСделайте полную архивную копию, выполните тестирование и исправление, затем усекайте журнал при монопольном доступе

Для настройки глубины протоколирования в 1С 8 в свойствах журнала регистрации можно выбрать, какие события фиксировать. Регистрация изменения всех данных заметно увеличивает объём журнала и нагрузку, поэтому включать максимальный уровень стоит осознанно — например, на период расследования инцидента.

Проверка результата и контрольные точки

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

Контрольные точки

Как проверить результат

Запуск базы после операций с журналом
Норма

База открывается штатно, без сообщений о восстановлении и ошибках чтения

Тревожный признак

Появляются ошибки открытия файлов или требование восстановления — нужна проверка целостности

Тестирование и исправление
Норма

Проверка завершается без ошибок целостности

Тревожный признак

Есть сообщения о повреждённых таблицах — восстанавливайте из архивной копии

Наличие данных за последний рабочий день
Норма

Документы и изменения за последний день на месте

Тревожный признак

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

Свободное место на диске с базой
Норма

Запас свободного места достаточен для роста файлов

Тревожный признак

Диск почти заполнен — высок риск аварийного прерывания транзакций

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

Итог

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

Журнал транзакций — механизм целостности данных: в 1С 7.7 это файл 1Cv7.log, в 1С 8 его роль на уровне аудита выполняет журнал регистрации, а транзакции обеспечивает платформа или СУБД. Любые действия с журналом выполняйте только после полной архивной копии и при монопольном доступе к базе.

Частые вопросы о журнале транзакций 1С

Можно ли восстановить удалённый документ по журналу транзакций?

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

Почему файл 1Cv7.log так быстро растёт и можно ли ограничить его размер?

Файл растёт пропорционально числу изменений в базе: каждый записанный документ и изменённый справочник добавляют записи. Штатного ограничителя размера нет, поэтому практикуют периодическое усечение журнала после архивирования и тестирования базы — это единственный безопасный способ сдерживать рост.

Что будет, если просто удалить 1Cv7.log?

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

Где в 1С 8 посмотреть, кто изменил конкретный документ?

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

Заменяет ли журнал транзакций резервное копирование?

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

Как часто нужно проверять состояние журнала и базы?

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