You can consider the following if you are aiming to reduce the volume without sacrificing essential security monitoring:
- Define your auditing requirements based on your specific needs for compliance, security, and data governance. If you're interested in unauthorized access, then monitoring failed logins (FAILED_DATABASE_AUTHENTICATION_GROUP) may be more critical than monitoring every single batch completion.
- Use filtering to exclude unnecessary entries. For example, you might exclude read-only queries from BATCH_COMPLETED_GROUP if they aren't of interest.
- Implement an appropriate retention policy will help manage the storage of logs. You might decide to keep detailed logs for a shorter period and summary data for longer.
If storage costs become a concern, you may consider storing your logs in Azure Data Lake Storage, which might be more cost-effective than other storage solutions.
Don't forget before deploying in production, test in a non-production environment to understand the volume and refine your auditing strategy.