Однажды мы заметили, что на системном диске значительно уменьшился размер свободного пространства. Одной из причин этого была папка С:\Program Files\1cv82\srvinfo\reg_1541\, в которой разросся размер файлов журнала регистрации. Существует возможность очистить журнал регистрации интерактивно в
1. Автоматизированная периодическая очистка разросшегося журнала регистрации на сервере с сохранением удаляемых частей на другом диске.
Конфигураторе из меню «Администрирование» —> «Настройка журнала регистрации». Но есть возможность автоматизировать этот процесс, запуская командную строку следующего вида:
«[PathTo1Cv8Exe]\1cv8.exe» CONFIG [ConnectionString] /Out[PathToOperLog] /ReduceEventLogSize[ShrinkDate] -saveAs [BackUpedLog]
[ConnectionString] — строка подключения к информационной базе. Т.к. речь идёт о серверном варианте, эта строка будет иметь вид «/S[ServerName]\[InfoBaseName] /N[UserName] /P[UserPassword]». Пользователь должен иметь право администрирования.
[PathToOperLog] — путь к файлу, в котором будут сохранены сообщения системы при выполнении этой операции.
[ShrinkDate] — дата, по которую будет укорочен журнал регистрации в формате yyyy-mm-dd
[BackUpedLog] — путь к файлу в формате *.elf, к которым можно будет обратиться в случае необходимости проводить расследования давних операций с информационной базой.
Эту операцию можно выполнять тогда, когда в информационной базе не будет других пользователей. Пробелы (и их отсутствие) проставлены в соответствии с документацией, обращайте на них внимание.
Наш системный администратор написал Power Shell скрипт (ВНИМАНИЕ: данные в нём анонимизированы, для использования требуется актуализация применительно к конкретной ситуации):
#
# backup & shrink 1c logs
#
param (
[string]$1cexe = «C:\Program Files (x86)\1cv82\8.2.15.319\bin\1cv8.exe»,
[string]$1cbase = «srvrname\ibname»,
[string]$1cuser = «username»,
[string]$1cupassword = «password»,
[string]$1coperlog = «s:\logs\1cshrink.txt»,
[string]$1cdaysoflogstore = 7, #[дата по которую удалить логи] (get-date).Date.AddDays(-$1cdaysoflogstore).ToString(«yyyyMMdd»)
[string]$1clogsarchive = «s:\backup\6months\», #[путь к сохраняемому в другом месте файлу логов *.elf]
[string]$1clogfilename = $env:COMPUTERNAME.ToLower() + «-1clog-» + ($1cbase.split(«\»))[1] + «-» + (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`»`»»
2. Настройка и очистка журнала регистрации
Мы уже рассматривали Журнал регистрации, теперь посмотрим как настроить данный журнал.
Для открытия окна, зайдем в пункт меню “Администрирование-Настройка журнала регистрации“
В принципе все понятно. В группе Регистрировать в журнале событий выбираем данные которые будут регистрироваться. В поле Разделять хранения по периодам, выбирается период разделения журнала на файлы.
Очистка журнала регистрации
Так же, от сюда можно удалить устаревшие данные регистрации. Для этого есть кнопка “Сократить“.
В поле Текущий диапазон событий, указывается диапазон времени за который есть данные.
Удалить события до – здесь указываем до какой даты можно удалить данные.
Удаляемые данные можно сохранить, для этого установим свойство “Записать удаляемые события в файл” и укажем папку в которую сохраним.
Если требуется периодически сокращать журнал и при этом иметь возможность просматривать уже удаленные события журнала, то установите флажок “Сохранять разделение хранения журнала по периодам и объединять с сохраненным ранее журналом“.