Документация

Сколько занимает журнал

Журнал изменений растёт вместе с сайтом, и это первое, о чём спрашивают перед покупкой.

Из чего состоит запись

Часть записи Что это Вклад в размер
Служебные поля дата, действие, сущность, пользователь, сайт, адрес страницы десятки байт
Старые и новые значения только изменившиеся поля от десятков байт до килобайтов
Стек вызова цепочка файлов и строк обычно самая крупная часть

Значения и стек хранятся отдельными полями в базе, рассчитанными на объёмные данные.

Порядок величин

Точную цифру даёт только замер на своих данных, но порядок такой: обычная запись об изменении элемента инфоблока с сохранённым стеком в сотню шагов занимает единицы килобайтов.

Отсюда простая прикидка: тысяча изменений в сутки — единицы мегабайтов в сутки. Магазин, который еженощно обменивается с 1С и трогает десять тысяч товаров, за неделю набирает сотни мегабайтов.

Как замерить у себя

Включите журнал на сутки обычной работы и посмотрите размер его таблиц штатными средствами базы:

sql
SELECT table_name, ROUND(data_length / 1024 / 1024) AS mb
FROM information_schema.tables
WHERE table_schema = DATABASE() AND table_name LIKE 'devbx_entity_log%';

Полученную цифру умножьте на срок хранения — это и есть ожидаемый объём в установившемся режиме.

Что делать с большим объёмом

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