Solves the audit needs for any JVM based application.
APACHE-2.0 License
Solves the audit needs for any JVM based application.
Auditing is a cross-cutting concerns of many applications supporting business process/workflows. There are some solutions out there like Javers, Audit4J, Log4j Audit etc.. that aims to provide auditing functionality for java applications. However, most of them focus on capturing the audit information and storing in some sort of database or filesystem. While this is desirable in most traditional use cases, it becomes a challenge when microservices are serving high request throughput. There are other challenges when aggregating audit information generated from hundreds of microservices. In such cases, there's a need to decouple audits from business flows yet guarantee eventual consistency and performance. Auditor-v1 is an attempt to solve this.It offers a client library, and an app server that captures audit events at high throughput in distributed way.
The project is composed of following modules:
The modules are available on maven central repo. Just point your maven/gradle to maven central and you should be able to download the relevant modules.
repositories {
mavenCentral()
}
<repositories>
<repository>
<id>central</id>
<name>Maven Central</name>
<layout>default</layout>
<url>https://repo1.maven.org/maven2</url>
</repository>
</repositories>
It can be integrated in either of following two ways.
Auditor
instance.you can refer to the example modules:
on how to integrate with auditor client APIs.
Auditor client configurations: AuditorEventConfig.kt
can be provided both at startup time and during runtime.
You can also refer the application.yml
in example modules to understand how to use different configurations at startup time.
Runtime configurations can be also seen in examples modules code.
Refer the client-spring-boot-starter's README.md to see full configuration options.
Auditor server is present inside app
module. Refer the app module's README.md for how to use the app server.
Please refer to our Contributing page for more details.
For any queries/community support reach out to stack overflow channel: <//todo>
Refer the app module's README.md for how to run the app server locally