This article provides an introduction to MicroStation Exception logs to help anyone familiarize themselves with their usefulness and operation. It is not intended to be an exact step-by-step tutorial on how to decipher what is in an exception log (and accompanying MiniDump) or correlate that to the specific cause of the exception.
An exception is simply an error that a Windows application generates that it may or may not be able to recover from. The error could be the result of bad data passed to or used by an application or simply coding errors in that application. Application exceptions can range in severity from harmless to complete loss of data.
Any number of conditions can cause a Windows application to throw an exception. "General" exceptions include path related issues (i.e. missing or wrong version of .DLLs), application coding bugs, etc. MicroStation-specific exceptions can be file-related (e.g. design, resource, workspace, etc.) or related to 1st- or 3rd-party or custom applications.
MicroStation exception logs provide a lot of information particular to the MicroStation environment and conditions under which MicroStation was running -- all from a viewpoint within the user's environment. It is important to note that exceptions logs and exceptions are not specific and unique to Bentley products -- any Windows application can generate exceptions and exception logs, each varying with different amounts of data and information collected.
MicroStation exception logs consist of a text file (Exception.log) and an optional binary dump file (MiniDump.dmp). Exception logs can contain one or more exceptions and specific system details related to those exceptions. MicroStation/J and prior releases generate a single Exception.log file in:
MicroStation V8 (prior to 08.05.01.25) generates an Exception.log and MiniDump.dmp file in:
MicroStation V8 2004 Edition (08.05.##.## and higher) generates exception logs in separate directories:
MicroStation XM (08.09.##.##) or V8i (08.11.##.## ) generates exception logs under Windows TMP directories:
NOTE: ExceptionHistory directories are renamed in a pattern where ExceptionHistory-1 always contains the most recent exception and up to ExceptionHistory-20 contains the oldest. This is "configurable" in manageexceptionlogs.vbs.
Almost all of the information contained in the Exception.log file is human readable. It provides a good understanding and more complete picture of the state of the environment under which MicroStation was running when the exception occurred. Having reliable information can be effective in troubleshooting, providing work-arounds, or even helping resolve an issue. Exception logs can provide key areas of insight into things like customizations that a user may or may not be aware they have loaded, actions a user may have been performing, etc.
Let's examine some of the most useful information found in all MicroStation exception logs:
Exception log information added in MicroStation V8 2004 Edition:
The most important things to look for in a MicroStation Exception log are:
Some additional things to consider (that the exception log may provide clues to):