Quest Error Manager Freeware v1.4.1

30 Apr 2013 at 11:03pm

By downloading this file you are accepting the license agreement.

Show agreement text


The Quest Error Manager (QEM) is a framework that will help you standardize the management of errors in a PL/SQL-based application.  With QEM, you can register, raise and report on errors through an API that makes it easy for all developers to perform error management in the same way, with a minimum amount of effort. Error information is logged into the instance (general information about the error) and context (application-specific name-value pairs) tables. You should install QEM separately for each application you build. QEM also offers programs that: substitute for DBMS_OUTPUT.PUT_LINE; trace execution of your application; and assert or validate assumptions.

Quick Specs

The Error Manager helps you in these two areas:

  1. Error definition and management
    Use the q$error_manager package to raise, handle and log errors. Rather than write low-level error logic yourself, you simply call the appropriate program in the package API. The Error Manager will then write error information to a set of error tables. You can then extract this information and pass it back to the user (front-end environment) or query the tables to help diagnose the cause of the problem. 
  2. Runtime execution tracing
    The Quest Error Manager offers a single package to help you trace the execution of your application. With q$error_manager, you can
    1. Write to table or screen: Write trace information out to the q$log table (using the autonomous transaction feature, to ensure that the trace is saved without affecting your application transaction) or to the DBMS_OUTPUT buffer.
    2. Selectively turn on and off tracing through calls to the q$error_manager procedures. You can in this way set tracing for a given application test run, or you can build your own runtime interface to these programs in your application, as we did in The Quest Error Manager.
    3. Trace execution of code by a context string, and then also include strings, numbers, dates or Boolean values. You can also minimize the overhead of tracing by checking to see if trace is enabled before calling the trace program.

Installing the Quest Error Manager

Download and unzip the file into your directory of choice (for example, c:\QEM).

You can choose to install the Error Manager into your application schema, or create a new schema for these objects. If you want to be able to execute Error Manager from other schemas, you will need to create the appropriate public or private synonyms. We do not provide a script to do this.

Run the qem$install.sql script from your chosen schema to install the nine database objects associated with the Error Manager:

  • Tables: q$error_context, q$error_instance,q$error,q$log and their associated sequences
  • The q$error_manager package

You can integrate this script into your own application install scripts, if you choose.

Removing the Quest Error Manager

Run the qem$uninstall.sql script from the schema in which you installed the Error Manager to remove all the database objects associated with the Error Manager.


1561539 6 /