RequestContextFilter является расширением LogConj ThreadContext, который позволяет преобразовывать заголовки, передаваемые в запросах REST, в атрибуты ThreadContext. Это важно для аудита, чтобы вы могли передать логин, IP-адрес, номер учетной записи пользователя и т. Д. c, чтобы они могли быть включены во все события аудита (а также во все другие журналы). Хотя это не обязательно важно для ведения журнала аудита, в том числе requestId и "sessionId" важны для диагностики c и журналов отладки для сопоставления журналов между службами и серверами.
Файл каталога. json используется для определения событий и атрибутов аудита. Обычно вы создаете проект, похожий на log4j-audit-sample . Этот проект содержит 3 вещи:
- API службы аудита - каталог. json находится в src / main / resources и содержит определения ваших событий и атрибутов. Когда вы запустите «mvn clean package», «mvn clean install» или «mvn clean deploy» в этом проекте, он прочитает каталог и сгенерирует все интерфейсы Java для определенных вами событий. Затем вы должны включить jar, созданный из этого проекта, в свои приложения вместе с jar log4j-audit-api для регистрации событий.
- Служба аудита - служба REST, которую можно использовать для регистрации событий из не- Java приложений. Служба будет проверять события по вашему каталогу.
Log4j-Audit поставляется с приложением Spring Boot, которое можно использовать в качестве редактора для каталога, так как редактирование JSON может быть утомительным и подверженным ошибкам , Тем не менее, приложение Spring Boot должно запускаться как однопользовательское настольное приложение, что немного странно, так что настольный редактор на базе Electron JS разрабатывается .
Log4j-Audit в настоящее время поддерживает два формата для каталога; файл каталога. json, хранящийся в git или каталог RDMS, доступ к которому осуществляется через JPA. Обычно каталог, хранящийся в git, используется для генерации интерфейсов Java, потому что они должны изменяться только в обычном процессе разработки, и вы захотите управлять этими определениями с нормальным циклом выпуска. Редактор каталога Spring Boot считывает каталог json из git и затем загружает его в базу данных в памяти, чтобы редактор мог воспользоваться ссылочной целостностью, которую обеспечивает база данных. Служба аудита может быть настроена на использование базы данных для хранения «динамического c каталога». Для этих записей каталога отсутствуют интерфейсы Java, и приложения, которые хотят выполнять аудит с использованием этих определений событий, должны делать это через службу аудита.
Надеемся, что она предоставляет информацию, которую вы ищете, но если вы выполнили шаги на странице Начало работы и посмотрите пример приложения, вы должны иметь представление о том, что вам нужно сделать. Если нет, ответьте на дополнительные вопросы.