Search Results prof_runid




Overview

FND_TRACE is the core PL/SQL package body within the Oracle E-Business Suite Applications (APPS) schema responsible for managing the SQL trace and profiler infrastructure used throughout EBS releases 12.1.1 and 12.2.2. Its principal business function is to provide a controlled, programmatic interface for enabling and disabling database-level tracing for a given user session, and for attaching meaningful identifiers to the resulting trace files so that they can be located and analyzed by developers, DBAs, and Oracle Support.

Because tracing is expensive in terms of I/O and database overhead, FND_TRACE exists to make tracing an opt-in, well-scoped activity rather than a global setting. The package exposes session-level enablement, an identifier scheme (built from user name, concurrent request ID, and similar runtime context), and file-size and filename resolution utilities. In this sense it acts as the EBS-facing abstraction over Oracle database tracing primitives such as DBMS_SYSTEM and the V$ dynamic performance views.

The package header is owned by APPS and classified as OTHER in the ETRM metadata. The body includes an internal DLOG debugging helper that writes to the concurrent manager log via FND_FILE, and a GET_DB_VERSION function that returns the database release number by parsing V$INSTANCE. These are supporting utilities for the trace machinery rather than public entry points.

Key Procedures and Functions

The documented API comprises thirteen callable units. Their names map directly to the trace lifecycle:

  • START_TRACE — enables SQL tracing for the current session, allocating a trace identifier and recording session-level state.
  • STOP_TRACE — disables tracing for the session and finalizes the trace context.
  • SET_TRACE_IDENTIFIER — assigns the label (identifier) that is written into the trace file name, allowing a specific EBS action to be correlated with its trace output.
  • SET_MAX_DUMP_FILE_SIZE — caps the size of the trace/dump file so that runaway traces cannot fill the file system.
  • GET_TRACE_IDENTIFIER — returns the currently configured identifier.
  • GET_TRACE_FILENAME — resolves the full path/name of the active trace file, typically derived from the session and process information.
  • GET_TRACE_LEVEL — reports the trace level (for example, the DBMS_SYSTEM event level) currently in effect.
  • GET_TRACE_ID — returns the numeric trace identifier, used internally and by diagnostics.
  • IS_TRACE_ENABLED — boolean-style check indicating whether tracing is active for the session.
  • SUBMIT_PROFILER_REPORT — submits the profiler reporting step, which consumes captured trace data and produces the summarized report used by performance tuning.

Additional documented units include the identifier-setting companion and the file-size helper referenced above; parameter lists are intentionally omitted as they are not part of the supplied metadata.

Tables Accessed

FND_TRACE reads the following objects through APPS synonyms:

  • V$SESSION — supplies the SID, SERIAL#, and module information required to attach tracing to the correct session.
  • V$PROCESS — provides the operating-system SPID used to correlate the trace file with the server process.
  • V$INSTANCE — used by GET_DB_VERSION to parse the database release prefix.
  • DUAL — used for scalar computations and version checks.
  • DBMS_SYSTEM — the privileged package used to set the SQL_TRACE / event 10046 behavior for the target session.

Usage Notes

FND_TRACE is typically invoked in three ways: through the EBS user interface in "Help > Diagnostics > Trace" (which calls SET_TRACE_IDENTIFIER and START_TRACE), through custom concurrent programs or forms triggers that need targeted tracing, and via support routines that resolve the trace file for a reported session. Because the underlying DBMS_SYSTEM calls require elevated privileges, tracing is normally enabled by a designated DBA or via the standard EBS diagnostics responsibility. In 12.2.2 the package remains largely unchanged from the 2005-era header (AFPMTRCB.pls 120.3), so the same identifier conventions apply across both 12.1.1 and 12.2.2. Two other packages in the EBS data dictionary reference FND_TRACE, confirming it is an infrastructure dependency rather than an end-user application API.