cancel
Showing results for 
Search instead for 
Did you mean: 

Alfresco Audit Data Store in another DB

jigir_shah
Champ on-the-rise
Champ on-the-rise

Hello,

We are running ACS 6.2 and will be migrating around 1.5 Billions+ data in repository. Now, we want Auditing enabled for some events like, login, update, delete, move, etc.

Can anyone please help me get answers for below queries?
1. If we enable Alfresco Auditing, with amount of data, how and what impact would be there on database and performance?
2. Is it possible to store Audit data outside of Alfresco DB?
3. How we can configure ACS to store audit data in another DB instance?
4. Is there any Audit related component available for ADF?
5. If we execute Clear and delete audit APIs, would it clear data from DB tables?

Thank you.

4 REPLIES 4

afaust
Legendary Innovator
Legendary Innovator
  1. Impact on database / performance is dependent on what specific audit configurations / applications you use. As I don't find the default alfresco-access audit application useful, I never use this and always end up with custom audit configurations, so a generic statement would not be possible. It also depends on what kind of regular clean up / consolidation processes you have in place. A lot of customers / developers never even consider defining long term management processes to keep growth / impact in check.
    Generically speaking, if full auditing on an API level can increase durations for user actions / HTTP requests two or four-fold. In extensively used audit configurations, I have seen the database to have 50-70% audit data if extensive auditing is enabled from the first installation and run for many years (with multi-million nodes in Alfresco Repository), without any cleanup / consolidation in place.
  2. Not by default - you would have to implement your own custom AuditComponent / persistence layer and replace the Alfresco default. As I am not aware of anyone ever having successfully done such a thing outside of a hack-a-thon / experiment, this is certainly dangerous territory.
  3. See point 3
  4. Not that I am aware. Audit data is always very specific / customisable, and need custom semantic presentation, so it would really not make much sense for ADF to bundle any kind of default components.
  5. Yes and no - clear/delete Audit APIs clear and delete the high-level audit entries, but due to deduplication of data elements, the majority of data remains in the DB, and must be cleared by other processes. For this, there is the Alfresco PropCleaner job, which is a brute force cleanup. Alternatively, open source community addons exist which do incremental cleanup.

I also want to do the same thing like storing the audit data outside of Alfresco. Please help me out how can we achieve this.

Thank you @afaust.

Your response is really helpful for me. It would be great if you could explain how can we store audit data outside of Alfresco DB (in another database) and what configurations are required for that.

Please guide me through this.

afaust
Legendary Innovator
Legendary Innovator

How can I guide you through any configuration to store audit data outside of Alfresco DB when my answer literally contained:

"Not by default - you would have to implement your own custom AuditComponent / persistence layer and replace the Alfresco default. As I am not aware of anyone ever having successfully done such a thing outside of a hack-a-thon / experiment, this is certainly dangerous territory."

Guiding you through "this" would require that I have developed such a solution myself already (which I haven't) and would essentially be giving you all the details about it (which I either would not want to, if that solution was commercial, or should not need to, if that solution was open sourced) in textual / prose form.