Среда моего приложения: веб-интерфейс, Spring MVC + Security, Hibernate, MySQL (InnoDB)
Я работаю над небольшим приложением базы данных, управляемым из веб-интерфейса. Есть определенные и известные пользователи, которые обрабатывают хранимые данные. Теперь мне нужно отслеживать каждое действие создания / обновления / удаления, которое пользователь выполняет над базой данных, и создавать из этого простые, «похожие на список» отчеты. На данный момент я имею в виду таблицу «log» (столбцы: userId + timestamp + description и т. Д.). Я предполагаю, что аспект может быть запущен при любой операции C (R) UD, вставляющей строку журнала в эту таблицу. Но я не уверен, что именно так и нужно.
Мне также известны обычные журналы MySQL и log4j. Что касается файлов журналов, мне может понадобиться больше информации, чем доступно для MySQL. Log4j может быть решением, но я не вижу, как он может записывать в таблицы MySQL. Кроме того, я хотел бы сохранить некоторые ассоциации в моей журнальной таблице (например, идентификатор пользователя), чтобы позволить БД выполнять базовую фильтрацию и т.д.
Что бы вы порекомендовали? Есть ли какая-либо встроенная поддержка в Hibernate / Spring или log4j - верный путь?
Спасибо!