Разница в аудите и ведении журнала? - PullRequest
53 голосов
/ 22 марта 2010

Я встречал эти два слова чаще, но я не видел большой разницы в них?Я имею в виду, хотите знать, они используются взаимозаменяемо или есть некоторые различия в этих двух?Спасибо.

Ответы [ 8 ]

76 голосов
/ 22 марта 2010

Ведение журнала обычно означает запись событий уровня реализации, которые происходят во время работы программы (методы вызываются, объекты создаются и т. Д.). Как таковой он фокусируется на вещах, которые интересуют программистов

Аудит - это запись событий на уровне домена: создается транзакция, пользователь выполняет действие и т. Д. В определенных типах приложений (банковское дело) существует законное обязательство регистрировать такие события.

26 голосов
/ 22 марта 2010

Разница больше в использовании, чем в технике.

Аудит используется для ответа на вопрос "Кто что сделал?"и возможно почему.Ведение журнала больше сосредоточено на том, что происходит.

7 голосов
/ 22 марта 2010

Техническая проблема заключается в том, что аудит часто имеет юридические требования. Кроме того, аудит часто выполняется внутри приложения, например: имеется пользовательский интерфейс, чтобы увидеть, кто что изменил, потому что пользователям / отделу соответствия может потребоваться его проверка. Кроме того, аудит может иметь юридические требования (записать на носитель WORM один раз, чтобы им нельзя было манипулировать, хранить данные в течение x лет).

Пример: у меня есть торговое приложение. Все изменения в заказах проверяются - у вас есть OrderStatus и OrderStatusHistory. Это не техническая информация, а история является частью интерфейса приложения.

Ведение журнала чисто техническое. Время от времени можно отключить его или попросить администраторов извлечь файлы журнала.

5 голосов
/ 22 марта 2010

Они значительно отличаются. Ведение журнала - это просто абстрактная задача записи данных о событиях, происходящих в системе. Если вы вообще записываете какую-либо информацию, вы регистрируетесь.

Аудит, однако, более сложный. Аудит - это практика проверки журналов с целью проверки того, что система находится в желаемом состоянии, или для ответов на вопросы о том, как система достигла определенного состояния. Конечно, одним из способов проведения аудита является просмотр журналов, но вы можете проводить аудиты без журналов (в качестве простого примера вы можете напрямую спросить пользователя, несут ли они ответственность за конкретное изменение). Это не очень хорошая идея, потому что ведение журнала, как правило, является такой дешевой операцией, что альтернативы не нужно рассматривать.

3 голосов
/ 22 марта 2010

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

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

1 голос
/ 05 июня 2018

Ведение журнала отслеживает поток, в каком классе которого вызван метод, у нас есть методы A, B, C с различными классами. В классе X методы A вызываются для метода класса Y B, а для метода B вызывается для метода класса Y класса C. Как это отслеживает поток управления

Auditing будет отслеживать действия пользователя. Мы должны написать логику, и тогда система автоматически вставит / сохранит данные в таблицу аудита.

Давайте возьмем login.jsp, в котором мы можем ввести имя пользователя и пароль, затем перейти на страницу входа, затем управление переходит на страницу логического сервлета, внутри вызывается сервисный метод, и внутри пишется логика, подобная

httpsession session=reg.getsession();
session.setAttribute("userId",uid);

т.е. в базе данных мы принимаем столбцы как

created_by 
created_date
last_modified_by
last_modified_dt
1 голос
/ 22 марта 2010

Аудит подразумевает активный просмотр логов, ИМХО. Не может быть аудита без регистрации, но вы можете вести журнал без аудита.

0 голосов
/ 09 января 2014

Audit Trail - это недопустимые записи транзакций, в то время как журналы, с другой стороны, используются для обнаружения ошибок, и существует определенное время, когда файл журнала будет присутствовать

...