The concepts below help explain the building blocks of BugSplat, from the crash report to dump files and navigating in the app. They'll help you quickly dive into the language of defeating nasty and difficult bugs.
This is the foundational unit of the BugSplat universe. BugSplat client libraries integrate with your code to capture exception information and send it to the BugSplat website. This package of information is called a crash report.
Databases are the the highest order of organization inside of BugSplat.
Each Database usually corresponds with a different product that your company offers. Some users have only one database, but larger teams and companies will generally find value in utilizing multiple Database to keep their crashes from different products or versions of the same product separate.
This file contains the program state such as call stack, register values, loaded modules and system information. In many environments, BugSplat creates a minidump file automatically at the time of a crash.
This is the logic to mitigate an error scenario and resume program execution or to capture forensic data for post-mortem analysis and exit program.
This is an anomalous or exceptional condition requiring special processing during computation.
This is the exception that has logic to mitigate an error scenario such as to display a dialog to the user or reset values to their defaults. A program can continue execution after a handled exception.
This is an abstract object that represents all crashes that share the same x stack frames from the stack key to the top of the call stack. This may be a BugSplat-specific construct.
This is one level of the call stack.
This is the stack key and BugSplat term for a specific function in a call stack. The stack key is used to group similar crash reports. The default stack key is the function at the top of the call stack. However, crash reports can be grouped by different levels too. See our sub key page for additional details on this.
These are files that contain information to map information in the minidump file to file names and line numbers in source code.
This is the unexpected exception where the surrounding code does not have logic to handle the scenario and can put the program into an unknown state.
This is a version you can easily separate releases of your code inside of BugSplat. Typically, users will create a new version for each new release.
Using Versions is a useful way to track crashes that you want to keep separate. Many users find value in comparing and tracking crash rates, top crashes, and particularly tricky-to-fix crashes across their multiple Versions