Search Results internal_message
Overview
FND_LOG is the Oracle E-Business Suite logging infrastructure package. It provides the runtime interface through which application code, concurrent programs, forms, and web-tier components emit diagnostic messages into the unified EBS logging framework. Rather than relying on ad hoc DBMS_OUTPUT calls or custom audit tables, developers call FND_LOG procedures to record messages at defined severity levels (UNEXPECTED, ERROR, EXCEPTION, EVENT, PROCEDURE, STATEMENT), which are then filtered by the profile options FND: Debug Log Enabled, FND: Debug Log Level, and FND: Debug Log Module.
The package body contains private helpers such as INTERNAL_MESSAGE and GENERIC_ERROR, the exception bad_parameter, and the message buffer variable internal_messages. Public entry points are exported through the package specification. FND_LOG is one of the most widely consumed packages in EBS: the ETRM metadata records it as referenced by 3,237 other packages, making it a foundational utility for diagnostics and supportability across 12.1.1 and 12.2.2.
Key Procedures and Functions
- STRING — Core routine for writing a message at a caller-supplied log level and module, without additional context arguments.
- STRING_WITH_CONTEXT — Writes a message while capturing supplementary context such as node, IP address, process ID, JVM ID, thread ID, AUDSID, and DB instance.
- MESSAGE — Logs a message-only entry; typically used where a fully formed string is supplied by the caller.
- MESSAGE_WITH_CONTEXT — Variant of MESSAGE that records the same contextual identifiers as STRING_WITH_CONTEXT.
- MESSAGE_WITH_ATTACHMENT — Logs a message together with an attached payload, used where supplementary content must accompany the log record.
- INIT_TRANSACTION — Initialises logging transaction state, establishing the context for subsequent messages within the same unit of work.
- SET_TRANSACTION — Establishes or updates the transaction context associated with subsequent log records.
- WORK_METRIC — Records a single performance or workload metric into the logging framework.
- WORK_METRICS_EVENT — Emits a metrics-related event, typically for bulk or aggregated metric reporting.
- TEST — Diagnostic self-test routine used to validate logging configuration and output.
- GET_TEXT — Retrieves the accumulated log text, used to read back buffered content.
- SET_BUFFERED_MODE — The routine the user searched for; switches logging into buffered mode so messages accumulate in the session buffer (the internal_messages variable) rather than being written immediately to the log table.
- RESET_BUFFERED_MODE — Restores non-buffered, direct-write behaviour.
- PROXY_ALERT_FOR_CONC_REQ — Supports proxied alerting in the context of concurrent request processing.
Tables Accessed
- FND_LOG_MESSAGES — Primary target table for persisted log records written when buffered mode is not active.
- FND_LOG_TRANSACTION_CONTEXT — Stores transaction-level context established by INIT_TRANSACTION and SET_TRANSACTION.
- FND_NEW_MESSAGES — Message repository supporting new-style message retrieval used by MESSAGE and GET_TEXT.
- DBMS_UTILITY — Oracle-supplied package used for call-stack and error-stack capture referenced by STR_UNCHKED_INT_WITH_CONTEXT.
Usage Notes
FND_LOG is invoked from virtually every layer of EBS. Forms and OAF pages call it to capture debug output; concurrent programs log per-request activity; and 3,237 dependent packages reference it directly. In custom code, the standard pattern is to check the FND: Debug Log Enabled and level-related profile options before calling STRING or STRING_WITH_CONTEXT, so that logging overhead is incurred only when diagnostics are active. Setting a log level above the configured threshold suppresses output without changing calling code.
SET_BUFFERED_MODE and RESET_BUFFERED_MODE are used when a caller wishes to accumulate messages in memory and flush them as a group; buffered logging should always be paired with a corresponding reset to avoid leaving the session in an unexpected state. Because FND_LOG writes to shared tables and is called on high-volume paths, developers should avoid logging inside tight loops and should always supply a meaningful module name to enable effective filtering through FND: Debug Log Module.
-
PACKAGE BODY: APPS.FND_LOG
12.1.1
-
PACKAGE BODY: APPS.FND_LOG
12.2.2
-
APPS.FND_LOG dependencies on FND_LOG_TRANSACTION_CONTEXT
12.1.1
-
APPS.FND_LOG dependencies on FND_LOG_TRANSACTION_CONTEXT
12.2.2
-
APPS.FND_LOG dependencies on FND_GLOBAL
12.2.2
-
APPS.FND_LOG dependencies on FND_GLOBAL
12.1.1
-
APPS.FND_LOG dependencies on FND_LOG
12.1.1
-
APPS.FND_LOG dependencies on FND_LOG
12.2.2