Audit and Merge
Audit is different from Discovery in that Audit is very detailed. It searches through the Registry, Program Files, and Start Menu; and makes WMI calls to collect hardware, software, and BIOS information. It runs directly on the workstation, so it's not dependent on the environment to collect its information.
The audit is a relatively small (~700 kb) executable located in the Track-It! share on the application server. In order to get an audit for a workstation, we simply have to get the audit executable to run on the workstation. There are a few ways to do that, and I'll cover them in another discussion.
When the audit collects all of this data for a workstation, it puts that information into an XML file, and sends that audit XML to the Track-It! server. (Specifically, that audit XML file will normally be deposited into a \Data folder within the Track-It! share.)
That XML file will then need to be "merged" in order to get its data into the database so that it's visible in the Inventory module. (We'll cover merging techniques in the discussion that covers methods of running the audit.)
When the merge runs, it looks in the \Data folder for any audit XMLs that are present. It then opens the audit XMLs (one at a time), notes key pieces of information from the workstation, and matches that up to the corresponding record in the Inventory module. If it finds a match, then it updates that record with everything from the audit XML. If it doesn't find a match, it will create a new record to represent that workstation.
If the merge was successful, the audit XML gets transferred into the \Baseline folder within the \Data folder. If the merge failed for some reason, the XML will usually be moved to the \Error folder within the \Data folder.
The "audmerge.log" in the root of the \Data folder will contain entries that explain what the merge found, what actions it took, and the reason for any failures.
If this merge created a new asset, there won't be an existing entry in the \Baseline folder, and so the audit XML becomes the baseline XML for that asset.
If the merge is updating an existing asset, the contents of the audit XML get appended into the baseline XML for that asset.