Что должно быть в записях событий / аудита? - PullRequest
1 голос
/ 07 сентября 2011

Для корпоративного приложения вы пишете записи о событиях / аудите только для целей аудита и отладки (помимо записи записей транзакций в БД)?

Если вы это делаете, вы записываете их в простые файлы или напрямую в БД? или оба? Какую информацию вы собираете?

1 Ответ

4 голосов
/ 07 сентября 2011

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

Ведение журнала аудита, как правило, не носит технического характера, как в случае с выписками; вы бы не начали с журналов аудита для отладки, хотя вы могли бы использовать их, если хотите. Но обычные журналы приложений лучше подходят для устранения неполадок, поскольку они обычно содержат трассировки стека и тому подобное, а журналы аудита - нет.

Что касается БД или плоского файла, опять же, это зависит. Запись в БД особенно привлекательна для Hibernate / JPA, поскольку вы можете подключиться к системе событий вашего уровня персистентности для генерации событий аудита. Это вполне естественное отображение, потому что в Hibernate / JPA есть события для «сохранения», «обновления», «удаления» и т. Д., Именно то, что вы хотите проверять. Если требования требуют, чтобы определенные типы пользователей могли просматривать информацию журнала, то наличие данных в БД также полезно. Кроме того, большинство предприятий регулярно обновляют свои данные, что также сохраняет информацию аудита.

С другой стороны, вы не можете превзойти простоту регистрации плоских файлов, если вам просто нужно вести запись.

...