I am working on a system that handles authentication/authorization, and needs to keep track of the attempts of individuals logging in, making changes to the permissions/users, failed attempts, etc. We want to be able to parse this information into a database for further analysis/retrieval at a later time.
In our current implementation, we are using a home-brewed standard that is logged using a logging framework (Log4j in this case, but that is not what is important). Is a Logging framework the right mechanism to keep track of this information? It seems to me like it isn't; I had always understood logging to be a form of autopsy for the code - more to tell what happened when for purposes of debugging etc. This seems more like a reporting mechanism to me. Are there any standards for this type of a problem? Are there standard solutions/formats that people use? Is using a logging framework the right solution for this, or is there a better way to handle this type of data? What sources can I reference when looking at this information and presenting it to the stakeholders?
I should note - the data that is being logged is already being filtered based on compliance/security standards (no passwords, etc) and all of the logging occurs in our internal environment. I am more looking for a way that we can manage the change information of the authentication and authorization system.