Business Intelligence
3. Include the element and its ancestor elements as appropriate, as shown in the following example:
8.4 Managing the Query Log
The Oracle BI Server provides a facility for logging query activity at the individual user level. Use logging for quality assurance testing, debugging, and troubleshooting by Oracle Support Services. In production mode, query logging is typically disabled. The query log file is named nqquery.log, and is located in:
ORACLE_INSTANCE\diagnostics\logs\component_type\bi_component_name
Oracle BI Server query logging is tracked at a user level. It is a resource-intensive process if you track the entire user community.
It is recommended that you only test users when the user name clearly indicates it is a test user and have verified that query logging is enabled. If logging is enabled for such users, then it is recommended that they be given names such as sales_admin_with_ logging, sales_dev_with_logging, or sales_test_with_logging, so that you can readily identify them. Even production administrator logins should not have query logging enabled, because it could strain the available resources.
You should also disable query logging for the following:
■ The SQL statement in the initialization string. The Initialization string field is in
the Initialization Block dialog, in the General tab.
Note: For production systems, it is recommended that query logging be enabled only for a very targeted user community. In production systems, you can use usage tracking as the production-level logging facility. See Chapter 9, "Managing Usage Tracking" for more
Managing the Query Log
Diagnosing and Resolving Issues in Oracle Business Intelligence 8-11
The LOGGING column references stored values for the log level.
■ The logging level should be set to 0 (zero) for each production user. The Logging level field is in the User dialog, in the User tab. In the Administration Tool, select
Identity from the Manage option on the main toolbar. In the Identity Manager dialog, double-click a user and select the User tab.
This section contains the following topics:
■ Section 8.4.1, "Configuring Query Logging" ■ Section 8.4.2, "Using the Log Viewer"
8.4.1 Configuring Query Logging
This section includes information about setting the size of the query log, choosing a logging level, and enabling query logging for a user.
Because query logging can produce very large log files, the logging system is turned off by default. You can enable logging to test that the repository is configured properly, to monitor activity on the system, to help solve performance problems, or to assist Oracle Support Services. You must enable query logging on the system for each user whose queries you want logged. You do this using the Oracle BI Administration Tool.
8.4.1.1 Setting the Query Logging Level
You can enable query logging levels for individual users, as described in
Section 8.4.1.2, "Setting the Query Logging Level for a User." You cannot configure a logging level for a group.
A session variable overrides the logging level for a particular user. For example, if the administrator has a logging level of 4 and the session variable logging level is defined as the default 0 (zero) in the repository, then the logging level for the administrator is 0.
Set the logging level based on the amount of logging that is appropriate for your organization. In normal operations, logging is generally disabled (that is, the logging level is set to 0). If you decide to enable logging, then select a logging level of 1 or 2. These two levels are designed for use by administrators.
You might want to diagnose performance or data issues by setting a temporary log level for a query. You can enable query logging for a select statement by adding a prefix clause in the Advanced SQL Clauses section of the Advanced tab in Oracle BI Presentation Services. For example, for the select statement:
SELECT year, product, sum(revenue) FROM time, products, facts;
You can specify the logging level of 5 in the Prefix field as follows:
Set Variable LOGLEVEL=5;
For this query, the logging level of 5 is used regardless of the value of the underlying
LOGLEVEL variable.
Note: Use logging levels greater than 2 only with the assistance of Oracle Support Services.
Managing the Query Log
The query logging levels are described in Table 8–2.
Table 8–2 Query Logging Levels
Logging Level Information That Is Logged
Level 0 No logging.
Level 1 Logs the SQL statement issued from the client application. Also logs the following:
■ Physical Query Response Time — The time for a query to be processed
in the back-end database.
■ Number of physical queries — The number of queries that are
processed by the back-end database.
■ Cumulative time — The sum of time for all physical queries for a
request (that is, the sum of all back-end database processing times and DB-connect times).
■ DB-Connect time — The time taken to connect to the back-end
database.
■ Query cache processing — The time taken to process the logical query
from the cache.
■ Elapsed time — The time that has elapsed from when the logical query
is presented to the BI Server until the result is returned to the user. Elapsed time can never be less than response time, because elapsed time takes into account the small extra time between the logical query being presented to the BI Server to the start of preparation of the query. In cases where this delta time is negligible, the elapsed time equals the response time.
■ Response time — The time taken for the logical query to prepare,
execute, and fetch the last record. This matches the TOTAL_TIME_SEC that is logged in usage tracking, as described in Section 9.2,
"Description of the Usage Tracking Data."
■ Compilation time — The time taken to compile the logical query. ■ For each query, logs the query status (success, failure, termination, or
timeout), and the user ID, session ID, and request ID. Level 2 Logs everything logged in Level 1.
Additionally, for each query, logs the repository name, business model name, subject area name, SQL statement issued against the physical database, queries issued against the cache, number of rows returned from each query against a physical database and from queries issued against the cache, and the number of rows returned to the client application.
Level 3 Logs everything logged in Level 2.
Additionally, adds a log entry for the logical query plan, when a query that was supposed to seed the cache was not inserted into the cache, when existing cache entries are purged to make room for the current query, and when the attempt to update the exact match hit detector fails.
Do not select this level without the assistance of Oracle Support Services. Level 4 Logs everything logged in Level 3.
Additionally, logs the query execution plan. Do not select this level without the assistance of Oracle Support Services.
Level 5 Logs everything logged in Level 4.
Additionally, logs intermediate row counts at various points in the execution plan. Do not select this level without the assistance of Oracle Support Services.
Managing the Query Log
Diagnosing and Resolving Issues in Oracle Business Intelligence 8-13
8.4.1.2 Setting the Query Logging Level for a User
To set the query logging level for a user:
1. In the Oracle BI Administration Tool, select Manage, then Identity.