Логи операций всех пользователей
Мы сохраняем каждое модифицирующее действие, так как только такое действие может служить причиной конфликта или ошибки. Например, доступ к курсу никого не волнует, а его удаление или создание полезно логировать. Как и выставление оценки, например. Прохождение теста тоже логируем. diclass_log — одна из самых больших таблиц в системе (5+ Гб).
Для ускорения доступа и оптимизации хранения на диске мы используем партиции по году события.
Атрибуты
- id - bigint - уникальный ID.
- date - datetime - дата.
- ip - char(16) - IP пользователя.
- user_id - bigint - ID пользователя.
- role_id - bigint - ID его роли в данный момент.
- action_id - tinyint - ID операции из логов экшена.
- params - text - параметры действия.
Табличное представление
Некоторое табличное представление