OraLog is a logging framework for Oracle database developers. The main idea of the project was to create an extensible logging framework, easy to understand and easy to adapt to each project logging needs. Another important requirement which was taken into consideration was the need to change the logging properties on the fly so that the logging destination to be easily re-configured without any code changes.
OraLog is free. You can have a look here to see its license.
First of all, you have to create a package which MUST have a public procedure with
the following signature:
procedure log(pi_header log_header_typ,
pi_message varchar2,
pi_params varchar2);
The pi_header
parameter contains log header information, the pi_message
is the effective log message and the pi_params
contains additional info automatically sent
by the OL CORE when the appender is invoked. In the end the appender must be registered into the OraLog platform
and to be configured to subscribe to various "interesting" logs. Additional details may be
found here.
YES. Provide your log template as a valid SQL expression (see the "Template" field form "Table Appender" window).
You must check if you have configured a corresponding log profile/subscription. The log profile tells what messages to log and to which appender they have to be routed. In addition, double check:
If the DEBUG_WHEN condition relies to log header information then it is advisable to build the
DEBUG_WHEN condition based on the g_header
global variable defined within the OL package. This
variable is initialized with log header information after every log entry is issued and
only after that the DEBUG_WHEN condition is evaluated. So, do not build the DEBUG_WHEN condition
using the SYS_CONTEXT function if the information you need is already in the log header. Use
OL.g_header global variable instead, avoiding by this an additional expensive call to the SYS_CONTEXT function.