Object Auditing with Availability Groups We are about to implement Availability Groups and it brought up a question.  We currently use auditing to see which objects are no longer used in production.  We also take a backup each night to use the next day for reporting.  Obviously, once we go to Availability Groups we won't need this as we will use a read-only database for reporting.  Because of our current setup, we don't know if an object is only used in the reporting database since the audit isn't on that database.

Question: Will auditing on an Availability Group register when someone uses an object on one of the secondary servers and not the primary?
No, auditing only reflects the one server that is running the audits. If you want to centralize audit results from multiple servers, you'll need to combine that data yourself.

Keep in mind that if someone really wanted to circumvent this, they'd simply add another replica on any server they want, do the querying they need, and then destroy the replica. An audit on the primary would only capture the fact that a replica was added (and even then, only if you're auditing for those events.)