Удаление неиспользуемых журналов регистрации из папки Srvinfo.

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

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

Файловая база

Для файловых баз данных 1С журнал находится в папке с базой данных. Расположение файлов можно узнать при запуске программы в меню выбора базы данных:

Красным выделен путь. Если мы проследуем по этому пути, то увидим следующую картину:

Папка 1Cv8Log — это и есть директория, содержащая журнал регистрации.

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

Клиент-серверная база 1С SQL

В клиент-серверном режиме файлы истории обычно хранятся на сервере в каталоге:

C:\Program Files\1cv8\srvinfo\<Имя кластера сервера>\<Идентификатор базы на сервере>\1Cv8Log

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

Так же и с удалением — достаточно просто удалить данную папку.

Настройка журнала

Чтобы увидеть доступные настройки, необходимо зайти в и в главном меню найти пункт «Администрирование — Настройка журнала регистрации…»:

Получите 267 видеоуроков по 1С бесплатно:

В открывшемся интерфейсе доступны следующие настройки ведения журнала:

Здесь в поле «Регистрировать в журнале события» можно указать детализацию регистрируемых данных. Пункт «Не регистрировать» позволяет отключить ведение журнала вовсе. Другие пункты расшифровываются следующим образом:

  1. Ошибки — все возможные варианты сбоев и ошибок в системе;
  2. Предупреждения — важные сообщения системы, которые не являются ошибками;
  3. Информация — вся информация об изменяемых данных системы;
  4. Примечания — неважные сообщения (почти всегда их можно отключить).

Оптимизация журнала регистрации

Среди способов оптимизации скорости загрузки и работы с журналом можно выделить следующие методы:

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

Разделение хранения журнала по периодам. Если изменить настройку «Разделять хранение журнала по периодам» на значение день (для больших баз данных) / неделя (для средних), можно существенно поднять производительность журнала. Файлы логов будут разбиваться в папке 1Cv8Log на порции, заданные в настройке, и будут иметь вид, подобный 20140905000000.lgp, в котором видно дату и время создания лога.

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

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

И последний и самый эффективный способ оптимизации — перевод журнала регистрации на так называемый «Новый формат». Доступен он начиная с версии платформы 1С 8.3.5.1068 . Данный формат хранения лога журнала регистрации не в текстовом файле, а в отдельной базе данных на СУБД SQLite.

Для перехода на новый формат достаточно сконвертировать журнал с помощью нажатия кнопки «Новый Формат»:

Будьте внимательны, обратная конвертация в старый формат невозможна .

В системе 1С для анализа технической информации существует также .

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

Где найти журнал регистрации в 1С 8.3? Через меню «Все функции» — «Стандартные» или, в типовых конфигурациях 1C, в меню «Администрирование» — «Поддержка и обслуживание».

Настройка журнала регистрации производится в режиме конфигуратора. В меню «Администрирование» выберите пункт «Настройка журнала регистрации».

Здесь настраиваются те события, которые будут отображаться в журнале регистрации.

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

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

Просмотр и поиск записей

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

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

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

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

Отбор позволяет отобрать данные по конкретным пользователям, именам компьютеров, событиям и т. п. Так же у вас есть возможность вывести записи журнала регистрации только по конкретным метаданным, данным (указывается ссылка на нужный объект, например, конкретный документ) и прочие настройки.

В данном примере приведены настройки журнала регистрации для отбора всех событий пользователя «Admin», начиная с 20.06.2017.

Где хранится файл журнала 1cv8.lgd

Место физического хранения журнала регистрации напрямую зависит от того, файловая база или клиент — серверная.

Файловая база

При данном режиме размещения, журнал регистрации находится в папке с самой базой. Место ее расположение можно узнать либо из списка баз, либо из справки «О программе».

Если перейти по данному адресу, вы найдете папку с именем «1Cv8Log». Именно тут расположены данные журнала регистрации в файле 1Cv8.lgd.

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

При удалении данного каталога, журнал регистрации очистится.

Клиент-серверная база

В таком режиме все так же, как и в предыдущем, только данные журнала регистрации 1С хранятся на сервере. Чаще всего его место расположения следующее:

  • C:\Program Files\1cv8\srvinfo\<место расположения информационной базы>\1Cv8Log

Оптимизация

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

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

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

Начиная с версии платформы 1С 8.3.5.1068, журнал регистрации хранится в файле базы данных sqlite с расширением *.lgd, и данная настройка стала недоступна. Данный способ хранения журнала регистрации значительно производительнее, чем старый.

Как уменьшить или удалить журнал регистрации в 1С

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

На сервере 1С со временем увеличивается в размерах папка
reg_1541 , содержащая журналы регистрации 1С. Расположена эта папка в директории С:\Program Files\1cv82\srvinfo. И как следствие может возникнуть проблема свободного пространства на системном жестком диске. Чтобы избежать роста папки srvinfo необходимо периодически очищать журнал регистрации 1С.

Удаление неиспользуемых журналов регистрации из папки Srvinfo

В журнале регистрации фиксируется все изменения объектов баз 1С — документы, справочники, регистры и т.д.

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

C:\Program Files\1cv8\srvinfo\\\1Cv8Log

Папка <Имя кластера сервера> по-умолчанию называется reg_1541.

После удаления базы данных с сервера 1С папка журнала регистрации не удаляется из Srvinfo. Поэтому из множества папок в
Srvinfo могут находиться и те, которые давно не используются и просто занимают место на жестком диске.

Вычислить эти папки можно открыв файл , который находится так же в reg_1541.

Копируем <Идентификатор базы на сервере> из папки Srvinfo и ищем в файле 1CV8Clst.lst. Если идентификатор в файле не найден, то папку можно удалять.


В директории Srvinfo находится папка с названием вида snccntx+<Идентификатор базы на сервере> . Эта папка содержит сеансовые данные и ее лучше не удалять без необходимости т.к. много места она не занимает.

Настройка и очистка журнала регистрации 1С

Запускаем 1С в режиме конфигуратора и переходим в меню «Администрирование/Настройка журнала регистрации»

В настройках журнала регистрации можно выбрать какие события будут регистрироваться:

Ошибки — информация о сбоях
Предупреждения — важные уведомления, не ошибки
Информация — все изменения базы данных
Примечания — все остальные уведомления

Для очистки журнала регистрации нажимаем кнопку «Сократить»

Здесь можно будет увидеть диапазон дат, за который хранятся данные.

В поле «Удалить события до:» выбираем дату до который будем очищать журнал регистрации.

Автоматизация процесса очистки журнала регистрации

Автоматизация процесса через командную строку Windows выглядит таким образом:

"\1cv8.exe" CONFIG /Out /ReduceEventLogSize -saveAs

— строка подключения к информационной базе. Т.к. речь идёт о серверном варианте, эта строка будет иметь вид «/S /N /P». Пользователь должен иметь право администрирования.

— путь к файлу, в котором будут сохранены сообщения системы при выполнении этой операции.

— дата, по которую будет укорочен журнал регистрации в формате yyyy-mm-dd

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

Операцию необходимо выполнять когда нет активных подключений к базе 1С.

Образец скрипта для PowerShell

# # backup & shrink 1c logs # param ($1cexe = "C:\Program Files (x86)\1cv82\8.2.15.319\bin\1cv8.exe", $1cbase = "srvrname\ibname", $1cuser = "username", $1cupassword = "password", $1coperlog = "s:\logs\1cshrink.txt", $1cdaysoflogstore = 7, #[дата по которую удалить логи] (get-date).Date.AddDays(-$1cdaysoflogstore).ToString("yyyyMMdd") $1clogsarchive = "s:\backup\6months\", #[путь к сохраняемому в другом месте файлу логов *.elf] $1clogfilename = $env:COMPUTERNAME.ToLower() + "-1clog-" + ($1cbase.split("\")) + "-" + (get-date).Date.ToString("yyyyMMdd") + ".elf") $1clog = $1clogsarchive + $1clogfilename cmd /c "`"`"$1cexe`" CONFIG `/s$1cbase `/N`"$1cuser`" `/P`"$1cupassword`" `/Out$1coperlog `/ReduceEventLogSize $((get-date).Date.AddDays(-$1cdaysoflogstore).ToString("yyyy-MM-dd")) -saveAs`"$1clog`"`""

Внимание! Данные для подключения к базе 1С обезличены. Необходимо заменить на свои.

Перенос журнала регистрации на другой диск

Чтобы избежать переполнения системного диска файлами журнала регистрации 1С папку SRVINFO можно перенести на другой диск. Выполнить это можно изменив параметры запуска службы «Агент сервера 1С:Предприятия 8.3» в реестре Windows.

В редакторе реестра переходим по ветке HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\1C:Enterprise 8.2 Server Agent и в параметре ImagePath изменяем значение «Агент сервера 1С:Предприятия 8.3» «C:\Program Files (x86)\1cv8\8.3.10.2667\bin\ragent.exe» -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d «C:\Program Files (x86)\1cv8\srvinfo».
Вместо «C:\Program Files (x86)\1cv8\srvinfo» указываем новую директорию нахождения журнала регистрации.

редактирование запуска службы «Агент сервера 1С:Предприятия 8.3» в реестре Windows

В статье использован

Журнал регистрации — вещь нужная и полезная, но, нередко очень и очень медленная.

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

В старых версиях файл журнала регистрации имеет расширение «lgp» и найти его можно тут:

Начиная с версии 8.3.5.1068 файл журнала регистрации имеет расширение «lgd» и находится все там же:


Для серверных баз, файл журнала регистрации можно отыскать тут:


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


Кроме этого была добавлена пара новых функций и изменен формат времени (теперь время хранится в UTC).

Посмотрим, какие инструменты имеются в 1С для работы с журналом регистрации.

Функции

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

ЗаписьЖурналаРегистрации — позволяет добавить запись в журнал регистрации.

ПолучитьИспользованиеЖурналаРегистрации — возвращает массив уровней журнала регистрации для которых осуществляется запись событий, настроить уровни журнала регистрации можно в меню «Администрирование»->»Настройка журнала регистрации…» или воспользоваться следующей функцией.

УстановитьИспользованиеЖурналаРегистрации — позволяет программно установить уровни журнала регистрации, функция требует монопольного доступа и административных прав.

ПредставлениеСобытийЖурналаРегистрации — возвращает локализованное название события.

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

ПолучитьЗначенияОтбораЖурналаРегистрации — позволяет получить возможные значения параметров отбора журнала регистрации, что пригодиться для формирования фильтра при использовании функции выше.

УстановитьИспользованиеСобытияЖурналаРегистрации — позволяет управлять регистрацией событий в журнале регистрации, требует административных прав.

ПолучитьИспользованиеСобытияЖурналаРегистрации — получает текущее состояние управления регистрацией указанного события, требует административных прав.

СкопироватьЖурналРегистрации — копирует часть журнала регистрации (в соответствии с фильтром) из одного файла в другой, требует административных прав.

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

Данные

Как уже говорилось выше, данные из журнала регистрации можно получить при помощи функции «ВыгрузитьЖурналРегистрации».

Кроме этого для журналов регистрации нового вида (.lgd) можно использовать другой способ — внешний источник данных.

Для того, что бы использовать файл журнала регистрации в качестве внешнего источника данных, потребуется установить ODBC драйвер для SQLite, скачать его можно (выбор между 32-х и 64-х битыми версиями зависит не от версии ОС, а от версии 1С).

После установки драйвера добавляем в конфигураторе новый внешний источник данных, а затем добавляем таблицы, строка соединения выглядит пример так: «DRIVER=SQLite3 ODBC Driver;Database=D:\1Cv8.lgd;BigInt=1;»

Затем можно будет выбрать интересующие Вас таблицы (основная таблица называется «EventLog», но для полноты информации потребуются все таблицы).


После выполнения всех операций получится следующее:

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

На этом все, надеюсь эта статья Вам помогла.