Резервное копирование Битрикс файлов и ведения логов действий пользователей

actionslog-4753109

21 февраля 2020 1С-Битрикс

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

actionslog1-1024x734-6449063

Возможности модуля

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

actionslog2-7511016

Бэкапы в базе данных выбраны неслучайно — это позволяет восстановить файл в случае его редактирования и последующего неудачного сохранения из-за закончившегося места на тарифе хостинга (в данном случае файл сохраняется с нулевым размером).

Установка модуля

Копируем из архива ActionsLog.php в папку в /bitrix/php_interface/, itc_actions_log.php — в /bitrix/admin/. Затем в /bitrix/php_interface/init.php подключаем модуль:

if(file_exists($_SERVER["DOCUMENT_ROOT"]. "/bitrix/php_interface/ActionsLog.php")) {
    require_once $_SERVER["DOCUMENT_ROOT"]. "/bitrix/php_interface/ActionsLog.php";
}

После выполнения вышеприведенных манипуляций в панели-администрирования в Настройки → Инструменты → Журнал пользовательских действий появится новый пункт меню. При первом же изменении файла автоматически создастся таблица в базе данных, в которую будут сохраняться логи и резервные копии.
Дополнительно в файле ActionsLog.php можно переопределить разрешенные для бэкапа типы файлов.