Модуль предназначен для отображения всех изменений в системе (добавление, изменение, удаление), которые совершаются пользователями или скриптами через стандартный функционал, а с версии 7.2 еще и о полученных через формы на сайте согласиях с обработкой персональных данных.
Информация получается из системных событий и сохраняется в базе данных. Просмотреть её можно в административной части модуля.
Стоит отдельно подчеркнуть, что логируются только изменения, выполненные через API системы. Если кто либо добавил, зменил или удалил данные посредствам прямых MySQL запросов, самописных скриптов и т.п., то информация об этом сохранена не будет.

В панеле управления модуля («Настройки» — «Логирование») можно просмотреть всю доступную информацию о прощедших событиях.
В каждом событии присутствуют внутренние ссылки на объекты, подвергшиеся изменению. Следует понимать, что если объект будет или был удалён, либо перемещён — ссылка будет бесполезной.
Список событий можно сортировать по различным критериям. Для этого достаточно выбрать параметры сортировки и нажать кнопку «Отобразить» в нижнем правом углу экрана. На данный момент возможно сортировать события по дате, названия, пользователю, при этом выбирая порядок сортировки. Кроме того, возможно использовать фильтр по типам событий (добавление, изменение, удаление), по сущностям системы (сайт, раздел, компонент и т.п.), чтобы отображать только интересующие записи.
Статистика логирования разбивается на страницы и выделяется цветом для удобства восприятия.
Для очистки данных логирования достаточно нажать кнопку «Очистить». После этого следует подтвердить намерение повторным нажатием на кнопку «Очистить» в правом нижнем углу экрана, либо нажать на кнопку «Отмена».
Помимо журнала действий, модуль «Логирование» ведёт журнал согласий на обработку персональных данных. Он отвечает на требование ст. 9 ч. 4 152-ФЗ: обязанность доказать факт получения согласия лежит на операторе. Журнал фиксирует каждое согласие так, чтобы его нельзя было изменить задним числом.
Журнал открывается в панели управления в модуле «Логирование» отдельной вкладкой «Журнал согласий».
| Поле | Описание |
|---|---|
| Дата и время | момент согласия (серверное время) |
| Субъект | зарегистрированный пользователь или анонимный посетитель |
| Имя / Email / Телефон | контактные данные, как их ввёл субъект |
| Текст согласия | дословный HTML-текст той галочки, которую отметил пользователь |
| Действие | согласие (grant) или отзыв (withdraw) |
| Источник | таблица и идентификатор записи (заявка, заказ, пользователь), инфоблок, URL страницы |
| IP и User-Agent | техническая доказательная информация |
На странице отдельной записи текст согласия выводится с очисткой HTML, а во все ссылки внутри него (и в ссылки на документы сайта — политику, согласие, правила) подставляется параметр ?date= с датой согласия. Если документы хранятся в компоненте «Документ с версиями», по такой ссылке откроется именно та редакция, которая действовала на момент согласия.
nc_consent_log::log_consent($common, $consents). Его можно вызвать, например, в «Действиях после добавления» компонента. Метод не прерывает основной сценарий при ошибке. $nc_core->input->fetch_get_post('f_Email'),
'phone' => $nc_core->input->fetch_get_post('f_Phone'),
'source_table' => 'Message' . $classID,
'source_object_id' => $msgID,
'source_infoblock_id' => $cc,
), ),
array(array(
'label_html' => 'Я даю согласие на обработку персональных данных …',
'type' => 'pd',
))
);
} ?>
Записи журнала не редактируются и не удаляются из интерфейса (append-only) — это и обеспечивает их доказательную ценность.
Внимание! Данные настройки предназначены только для опытных пользователей, установка значений констант отличных от значений по-умолчанию может привести к некорректной работе модуля в целом.
В административном списке предопределённых констант модуля («Настройки» — «Логирование» — «Настройки») по-умолчанию прописаны следующие обязательные константы:
| Константа | Описание |
|---|---|
| ACTIVITY | включить/выключить логирование. Включенное логирование будет лишним, если над проектом работает только один пользователь |
| ROWS_PER_PAGE | количество отображаемых на странице элементов |
| PAGES_NUMBER | количество отображаемых страниц |