In today's column I'll be discussing the top 5 best practices related to using the new CRM 2011 auditing features.  In addition we'll cover some of the most frequently asked questions that are appearing in the CRM forums related to auditing. 

Why talk about auditing?  Because auditing is one of the most anticipated features of CRM 2011, but also one can cause undue stress (and disk usage) if misused.

To start lets briefly cover the basics on how to enable auditing. 

There are 3 ways to enable/disable auditing:

a. Enable Auditing by Common Entities. This allows auditing to be enabled per groups of entities with a single click. To find out what is included in the group of entities, simply hover over the group. This is by far the easiest way to control auditing over the general entities.
 

b. Enable Auditing for all fields in the Entity. This allows auditing to be enabled or disabled for all fields in an entity.

c. Enable auditing on only certain fields. This allows granular control of auditing. To enable auditing on individual fields, we must first enable it for the entity and then disable it on fields that do not need auditing.

For more details on the basic operations of using CRM 2011 auditing, here's a more detailed blog:

https://community.dynamics.com/product/crm/crmtechnical/b/crmpowerobjects/archive/2010/09/27/auditing-with-microsoft-dynamics-crm-2011.aspx

Now on with the top 5 best practices for using auditing.

1. Turn off auditing when doing the initial import of data. Auditing is meant to keep track of user made changes. There is no need to waste disk space auditing bulk load or changes done by the initial bulk import. Enabling or disabling the whole auditing mechanism can be done with a single click.  Disable auditing during the initial load can save you quite a bit of disk space.  For example, lets say your initial import is 100K accounts and contacts.  With auditing turned on all fields, you could literally use almost 30% more disk space if auditing is turned on during the initial load.

2. Do not audit read only entities and fields. The best example of this is invoices. In many CRM systems invoices are imported nightly from an ERP system. When imported from an ERP system invoices should be read only in the CRM system. There is no need to audit it. Turning off audit will not only save disk space, but system resources too.

3. Choose carefully what you audit. As you design the items to audit, examine the fields that could have a business impact and from a financial, process, or regulatory perspective. These are the fields we want to audit.  Let me illustrate this with a real example. A client using CRM for sales automation is a steel manufacturing company and one of the entities used is a custom steel plate entity. This steel plate entity has dozens and dozens of fields and logic to calculate the final price. However, the sales reps have the ability to override the system generated price.   In this case, don't audit the dozes of fields used for calculations, but do audit the final price field.  Why?  Because this is the field that has a financial impact on the business.

 4. Delete Old Logs entries. Audit logs use disk space. The more activity the system has on audit enable entities, the more logs and thus the more disk space will be used. There is no need to keep audit logs indefinitely. CRM 2011 allows an administrator to delete auditing in batches.  Each batch is a calendar quarter.   Determine the time frame to keep audit logs and incorporate into a process deleting old entries. 

Audit log managed is located in Settings / Auditing / Audit Log Management


Then select the batch to delete.


Currently the only option to delete is by calendar quarter.  However, via custom code or potential in future enhancements, deletion of audit log by entity or more granularly can be accomplished.

5. Turn ON auditing. Auditing is a simple, and yet very powerful capability to comply with various regulations and keep track of users making decisions that impact the business from a process or financial perspective. Use it.

 Now lets move on to the top 5 questions related to auditing that we are seeing in the various CRM forms  and when chatting with clients.

Top 5 questions about CRM 2011 audit

1. Will auditing slow down my system?

Auditing will not slow down your CRM system. All auditing data is stored in a single audit table. This design keeps the audit logs completely separated from other CRM data.

2. If upgrading CRM 4 to 2011 will the CodePlex audit be migrated?

The CodePlex solution for auditing for CRM 4 is a completely different mechanism.  The audit data will not be migrated to CRM 2011.

3. Does audit data count against my CRM storage quota?

Yes it does.  That is why we recommend deleting audit data on a regular basis as part of a yearly maintenance.  Finding out how much disk space your audit data is taking is very simply.  Simply navigate to Settings / Auditing / Audit Log Management.

4. Can I audit just changes done by a couple users?

Auditing is turned on or off based on the entity or attribute.  If auditing is only desired for a couple users custom code is needed.

5. Can I schedule auditing to be turned off during data import?

Yes.  Auditing can be scheduled to be turned off during a data import but this requires custom code.