Как добавить дату и время в лог-файл при автоматической выгрузке базы 1С?

Системный администратор 1С v8.3 (Управляемые формы) 1С:Зарплата и Управление Персоналом IT и автоматизация бизнеса
← На главную

Автоматизация резервного копирования — это фундаментальная задача любого системного администратора, отвечающего за работоспособность информационных систем 1С. Часто для этих целей используют пакетные файлы (.bat), которые запускают Конфигуратор 1С с ключами выгрузки. Однако стандартный вывод логов часто не содержит информации о времени выполнения задачи, что затрудняет диагностику. Рассмотрим по шагам, как настроить ваш скрипт так, чтобы в журнале всегда отображались текущие дата и время.

Разбираем механику работы с файлами журнала

Для записи данных в текстовый файл из командной строки Windows мы используем операторы перенаправления > и >>. Очень важно понимать разницу между ними:

Пошаговое решение задачи

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


@echo off
:: Указываем путь к лог-файлу
set LOG_FILE=L:\Backup\1C\Zup1\Result_Log.log

:: Добавляем разделитель и текущую дату/время в лог
echo =========================================== >> %LOG_FILE%
echo Дата запуска: %DATE% %TIME% >> %LOG_FILE%
echo =========================================== >> %LOG_FILE%

:: Запускаем процесс выгрузки 1С
"C:\Program Files (x86)\1cv8\common\1cestart.exe" DESIGNER /S "SRV1\Zup1" /N "backup" /P "backup" /DisableStartupMessages /DumpIB "L:\Backup\1C\Zup1\Zup1.dt" /OUT "%LOG_FILE%" -NoTruncate

Важные технические нюансы

При настройке логирования обратите внимание на следующие моменты:

  1. Ключ -NoTruncate: Этот параметр, передаваемый платформе 1С, критически важен. Он сообщает программе, что при выполнении операции выгрузки не нужно очищать содержимое лог-файла, который был указан через /OUT. Если его пропустить, 1С может стереть всю историю, которую вы записали через echo.
  2. Формат даты и времени: Помните, что переменные %DATE% и %TIME% зависят от региональных настроек операционной системы. Если формат даты в Windows изменен (например, на американский), скрипт может работать некорректно. Мы рекомендуем проверять корректность вывода, просто запустив скрипт в консоли один раз.
  3. Пути к файлам: Всегда используйте полные пути к файлам журналов. Это исключает ситуацию, когда лог создается в текущей директории процесса, где у пользователя может не быть прав на запись.

Почему выгрузка — это не полноценный бэкап?

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

Для критически важных систем мы рекомендуем использовать штатные средства SQL Server для создания бэкапов, а .dt файлы использовать только как вспомогательный инструмент или для переноса базы между серверами.

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

← На главную