Я только что интегрировал концепцию ведения журнала для моей системы Grails и использовал механизм фильтрации для доступа к моим контроллерам и действиям. Хорошо, что я могу определить один фильтр для всех контроллеров и действий.Окружающий фильтр/перехватчики для классов домена в Gorm/Grails?
С классами доменов я знаю только концепцию перехватчика, где мне приходится писать перехватчик для каждого отдельного класса домена. Существует ли концепция, аналогичная фильтрам для доменных классов, где я могу определить перехватчик для ВСЕХ классов домена?
Большое спасибо заранее, Joerg.
ОБНОВЛЕНИЕ 1: Благодарим вас за отзыв в плагине аудита аудита от Stefan. Плагин аудита аудита выглядит как самая простая альтернатива, но создает слишком много строк/журналов для моего вкуса и не использует систему регистрации grails/log4j.
В настоящее время мои требования:
Регистрирует вставки/обновления/удаления для всех классов домена (для входа только инцидентов, а не любое изменение любого поля/колонки)
Войдите в систему регистрации Grails (log4j) для входа в стандартный вывод, отдельные таблицы базы данных или электронную почту (может быть уровень, например INFO или TRACE)
Войдите в специальный класс домена (таблица db) для создания журнала визуализации ион/система управления сверху (через контроллер Grails & действия). Здесь было бы здорово настроить, если журналы находятся в том же или другом приложении базы данных/grails-app (чтобы разделить систему управления журналом позже).
Насколько я знаю, просто «изменение» каротаж может быть сделано с помощью:
Отдельные заявления журнала в классах домена (требуется вставка/обновление/удаление событий в каждом классе домена)
Определение суперкласса «Log», который наследует вставки/обновления/удаления событий (делает его трудно сделать indivudal вставки/обновления/удаления событий в специальных классах домена)
Определить фильтр для всех контроллеров, но только сохранить/обновлять/удалять действия (проблема: не регистрируют изменения в классы домена без контроллера или если несколько классов домена прикоснулся в одном действии)
Надеется, что это помогает Другие. Тем не менее, я что-то пропустил?
Благодарим за отзыв. Плагин ведения журнала аудита способен регистрировать классы домена в таблице базы данных. Однако, похоже, настроить его непросто. Я не нашел способ настроить базу данных, столбцы таблицы или уровень ведения журнала. Например, плагин регистрирует каждое изменение для каждого поля класса домена, что позволяет использовать его в качестве системы управления версиями (вы можете откатить каждое изменение). Тем не менее, мне нужно только выполнить регистрацию самого изменения (вставить, обновить, удалить) и использовать обработанный log4j logging (то есть мои собственные приложения для баз данных, файлов или электронной почты). – 2010-12-12 09:17:26