Monitoring Data, Applications, and Databases

In This Section:

Monitoring Data Changes Using Triggers

Using Essbase Logs

Monitoring Data Changes Using Triggers

The triggers feature provided by Essbase enables efficient monitoring of data changes in a database.

If data breaks rules specified in a trigger, Essbase can log relevant information in a file or, for some triggers, can send an e-mail alert (to a user or system administrator); for example, to notify the sales manager if, in the Western region, sales for a month fall below sales for the equivalent month in the previous year.

There are two types of triggers. On-update triggers are activated during the update process, when the block containing the data referenced by the trigger is brought into memory. After-update triggers are activated after the update transaction is complete.

Note:

On-update triggers are supported only on block storage databases.

Administering Triggers

To administer triggers, a user must have Database Manager security privilege. Essbase monitors and potentially activates triggers during the following activities:

  • Data load

  • Calculation

  • Lock and send from Spreadsheet Add-in (available only for on-update triggers on block storage databases)

Essbase does not activate triggers during a database restructure.

  To create, change, display, and delete triggers, use a tool:

Tool

Topic

Location

Administration Services

Creating Triggers

Editing Triggers

Viewing Triggers

Enabling and Disabling Triggers

Viewing Trigger Spool Files

Deleting Triggers

Oracle Essbase Administration Services Online Help

MaxL

create trigger

create or replace trigger

alter trigger

display trigger

drop trigger

Oracle Essbase Technical Reference

You can see information on enabled and disabled triggers in the application log file when you start Essbase Server.

Creating On-Update Triggers

When creating on-update triggers, consider the following information:

  • You must use a symmetric WHERE clause when defining the area specification for a trigger. See the MDX documentation in the MaxL section of the Oracle Essbase Technical Reference.

  • To enable Essbase to send e-mail alerts, you must have JVM installed on your system.

    Note:

    E-mails related to Unicode-mode applications are encoded in UTF-8 and require a UTF-8-capable e-mail reader.

  • You cannot define a trigger that requires data from the following Essbase features:

    • Dynamic Calc

    • Hybrid Analysis

    • Partitioning

  • You can specify whether all trigger data values are stored in the spool file or whether only the most current values are stored (for example, use the a log_value parameter on the MaxL create trigger statement or create and replace trigger statement). If the log_value parameter is set to ON, both the new value and old value are logged to the spool file. If the log_value parameter is set to OFF, values are not logged to the spool file. The log_value parameter is active only for data load and lock-and-send activities.

Consider data security when sending e-mail alerts. When Essbase activates a trigger and sends an e-mail, it cannot check whether the e-mail recipient is authorized to see the data referenced by the trigger condition.

Avoid referencing a sparse dimension member in a trigger condition. When Essbase executes a trigger on one data block, it must read another data block that may or may not be updated. Depending on the state of the second block, Essbase may activate the trigger in error.

The following example is based on the Sample.Basic database. Assume that East and West are sparse dimensions and that the following statement defines the trigger condition:

FIX (East, West, Sales, Jan, Actual, Cola)
IF ((Sales -> East + Sales -> West) > 20)
EMAIL sales@.com 

Assume that the following Sales data values are stored for East and West:

  • Sales -> East = 5

  • Sales -> West = 6

Now assume that a user does a lock-and-send request to update the data values:

  • Sales -> East = 15

  • Sales -> West = 3

When Sales->East is updated to 15, temporarily, the database contains the following values:

  • Sales -> East = 15

  • Sales -> West = 6

So Essbase activates the trigger because 15 plus 6 is greater than 20. Subsequently, Essbase updates Sales -> West to 3. Now the data does not meet the trigger condition, because 15 + 3 < 20. However, Essbase has already activated the trigger.

When a data load is followed by a calculation, if both the loaded data and the calculated data meet the trigger condition, Essbase activates the trigger twice, once on the data load and once on the calculation.

Creating After-Update Triggers

When creating after-update triggers, consider the following information:

  • You must use a symmetric WHERE clause when defining the area specification for a trigger. See the MDX documentation in the MaxL section of the Oracle Essbase Technical Reference.

  • You cannot define a trigger that requires data from the Essbase Hybrid Analysis feature.

  • Spreadsheet lock-and-send operations do not activate after-update triggers.

Effect of Triggers on Performance and Memory Usage

Depending on the number of enabled triggers in a database, there may be a small decrease in performance of calculation and data load. You can control the maximum amount of memory used by the triggers feature by specifying the TRIGMAXMEMSIZE configuration setting in the essbase.cfg file. By default, TRIGMAXMEMSIZE is set to 4096 bytes. Choosing to write information to a file, rather than sending e-mail, may improve calculation and data load performance by reducing network traffic.

Trigger Examples

The following examples are based on the Sample.Basic database.

Note:

You cannot define a trigger that requires data from hybrid analysis members. You cannot define an on-update trigger that requires data from Dynamic Calc members or from members from another partition.

Example 1, Tracking Sales for January

Example 1 tracks the Actual, Sales value for the following month, product, and region:

  • January (Year dimension member Jan)

  • Colas (Product dimension member 100)

  • Eastern region (Market dimension member East)

When the member being calculated is Jan, and when the Actual, Sales value of Colas for January exceeds 20, the example sends an e-mail to two e-mail accounts.

create trigger Sample.Basic.Trigger_Jan_20
where "(Jan,Sales,[100],East,Actual)"
when Jan > 20 and is(Year.currentmember,Jan) then
mail ([Docs.Company.com],[trgsales@company.com],
  [inventory@company.com], 
[Mail sent by trigger_Jan_20])
end;

Example 2, Tracking Sales for Quarter 1

Example 2 tracks the Actual, Sales value for the following months, product, and region:

  • January, February, and March (the children of Year dimension member Qtr1)

  • Colas (Product dimension member 100)

  • Eastern region (Market dimension member East)

When the member being calculated is Jan, Feb, or Mar, and when the Actual, Sales value of Colas for the month January, February, or March exceeds 20, the example logs an entry in the file Trigger_Jan_Sales_20, Trigger_Feb_Sales_20, or Trigger_Mar_Sales_20. On subsequent trigger activations, both old and new log values are retained in the log files.

create or replace trigger Sample.Basic.Trigger_Qtr1_Sales
log_value on
Where "(crossjoin(Qtr1.children, {(Measures.Sales, [100],
  East, Scenario.Actual)}))"
When Year.Jan > 20 and is(Year.currentmember, Jan) then
  spool Trigger_Jan_Sales_20
When Year.Feb > 20 and is(Year.currentmember, Feb) then
  spool Trigger_Feb_Sales_20
When Year.Mar > 20 and is(Year.currentmember, Mar) then
  spool Trigger_Mar_Sales_20
end;

Example 3, Tracking Inventory Level

Example 3 tracks the inventory level for the following product, region, and months:

  • Colas (product 100)

  • Eastern region (market East)

  • January, February, and March (the children of Qtr1)

The trigger is activated after the update action is complete. If the inventory of Colas in the eastern region falls below 500,000, the example logs an entry in the file Inventory_East.

create after update trigger Sample.Basic.Inventory_east
where "(crossjoin ({children([Qtr1])},
{([Market].[East], [Product].[100],
  [Inventory].[Ending Inventory])}))"
when [Ending Inventory] < 500000 then
  spool Inventory_East
end;

Using Essbase Logs

This topic describes the logs that Essbase Server creates to record information about server, application, and database activities. Table 139 briefly describes each log.

Essbase also uses the Oracle Diagnostic Logging framework (ODL) for logging purposes. For information on the Essbase implementation of ODL, see the Oracle Hyperion Enterprise Performance Management System Installation and Configuration Troubleshooting Guide.

Table 139. Summary of Logs

Log Type

Log Location

Information Included

Essbase Server log

EPM_ORACLE_INSTANCE/diagnostics/logs/essbase/essbase_0/ESSBASE.LOG

Server activities and errors

Application log

EPM_ORACLE_INSTANCE/diagnostics/logs/essbase/essbase_0/app/appname/appname.LOG

Application activities and errors

Query log

EPM_ORACLE_INSTANCE/diagnostics/logs/essbase/essbase_0/app/appname/dbname/dbname00001.qlg

Query patterns of Essbase database retrievals

Outline change log

EPM_ORACLE_INSTANCE/diagnostics/logs/essbase/essbase_0/app/appname/dbname/dbname.olg

Changes to the outline

Exception log

One of these locations:

ARBORPATH/log00001.xcp

EPM_ORACLE_INSTANCE/diagnostics/logs/essbase/essbase_0/app/log00001.xcp

EPM_ORACLE_INSTANCE/diagnostics/logs/essbase/essbase_0/app/appname/log00001.xcp

EPM_ORACLE_INSTANCE/diagnostics/logs/essbase/essbase_0/app/appname/dbname/log00001.xcp

Errors that result when Essbase Server stops abnormally

Dimension build and data load error logs

One of these locations (see Table 149, Location of Dimension Build and Data Load Error Logs):

EAS_HOME/client/dataload.err

EPM_ORACLE_INSTANCE/diagnostics/logs/essbase/app/appname/appname.log

Errors from a dimension build or a data load

This topic describes the information written to a log and explains how you can use that information to maintain, tune, or troubleshoot Essbase Server.

For information about Administration Services logs, see “About the Administration Server Log” in Oracle Essbase Administration Services Online Help.

Essbase Server and Application Logs

Essbase Server writes, or logs, activities that occur in Essbase Server and applications in text files with a .log extension.

The Essbase Server log, named ESSBASE.LOG, is located in this directory in a standard Essbase installation:

EPM_ORACLE_INSTANCE/diagnostics/logs/essbase/essbase_0/ESSBASE.LOG

Each application on Essbase Server has its own application log, named after the application. For example, the log file for the Sample application is named sample.log. In a standard Essbase installation, application logs are located in one of these directories, depending on the value of the DEFAULTLOGLOCATION configuration parameter:

  • EPM_ORACLE_INSTANCE/diagnostics/logs/essbase/essbase_0/app/appname

  • ARBORPATH/app/appname

Information in application logs can help you pinpoint where and why an error occurred.

For information about the actions that you can perform on server and application logs, see Using Essbase Server and Application Logs. For information on viewing or analyzing logs using Administration Services, see “About Log Viewer” or “About Log Analyzer” in Oracle Essbase Administration Services Online Help. For information about specific error messages, see Oracle Essbase Error Message Reference.

Contents of the Essbase Server Log

The information in the ESSBASE.LOG file can help you assess:

  • Who performed an operation

  • When an operation was performed

  • Errors that occurred when an operation was performed or attempted

Table 140 lists the types of actions logged and the information included in the log message. For information about specific error messages, see the Oracle Essbase Error Message Reference.

Table 140. Contents of the Essbase Server Log

Type of Action

Information Included

Actions performed at the Essbase Server level, such as logging on Essbase Server or setting security

  • User name

  • Date and time

  • If changing permissions—User and group information and IP address of user

  • If logging on—Time and date the user last logged on

  • If logging off—Length of time the user was logged on

  • If creating or changing an application or database—Request to create or open the artifact; load, connect, and start the application or database to be created; and lock of the artifact to be created or changed

  • If creating, changing, or viewing an application or database—Requests to list applications and databases and requests to retrieve access information

  • Shutdown or startup requests

  • Requests to retrieve and delete the Essbase Server log

Actions performed at the application level, such as viewing application settings or viewing and changing custom-defined macros, custom-defined functions, and substitution variables

  • User name

  • Date and time

  • Requests to retrieve operating system resources, license information, and system-wide configuration

  • Retrieving and setting global values

  • If altering substitution variables—Request to list and set substitution variables

  • If altering custom-defined macros—Request to list and delete custom-defined macros

  • Requests to retrieve and delete the application log

Actions performed at the database level, such as creating rules files, outlines, reports, or calculation scripts

  • User name

  • Date and time

  • Requests to retrieve client settings, user, and group information

  • Requests to list applications and databases

  • Requests to retrieve access information

  • Requests to lock artifacts

  • Returning artifacts

Essbase Server Log Example

The following essbase.log example shows entries written when Essbase Server starts. First, the Sample application and the Basic database are loaded. The log file includes information about the time the application and database are loaded, the process ID assigned to the application by the operating system, and the startup of the security authentication module.

Note:

You can use the process ID to stop the application improperly if you are unable to perform a normal shutdown. See Stopping an Application Improperly.

[Tue Nov 06 07:54:16 2001]Local/ESSBASE0///Info(1054014)
Database Basic loaded
[Tue Nov 06 07:54:16 2001]Local/ESSBASE0///Info(1051061)
Application Sample loaded - connection established
[Tue Nov 06 07:54:16 2001]Local/ESSBASE0///Info(1054027)
Application [Sample] started with process id [1300]
[Tue Nov 06 07:54:18 2001]Local/ESSBASE0///Info(1054014)
Database Basic loaded
[Tue Nov 06 07:54:23 2001]Local/ESSBASE0///Info(1051134)
External Authentication Module: [LDAP] enabled
[Tue Nov 06 07:54:23 2001]Local/ESSBASE0///Info(1051051)
Essbase Server - started

The following log shows a single error. The admin user tried to rename an application using a name that already exists on Essbase Server. The log file includes information about the user name, the time of the error, and the operation that failed and caused the error.

[Tue Nov 06 08:00:04 2001]Local/ESSBASE0///Info(1051001)
Received client request: Rename Application (from user admin)
[Tue Nov 06 08:00:04 2001]Local/ESSBASE0///Error(1051031)
Application Testing already exists
[Tue Nov 06 08:00:04 2001]Local/ESSBASE0///Warning(1051003)
Error 1051031 processing request [Rename Application] - disconnecting

The next log shows a shutdown. The log file includes information about the name of the application shutdown and the time of the shutdown.

[Tue Nov 06 08:00:46 2001]Local/ESSBASE0///Info(1054005)
Shutting down application Sample
[Tue Nov 06 08:00:52 2001]Local/ESSBASE0///Info(1051052)
Essbase Server - finished

Contents of the Application Log

The information in the appname.log file can help you assess:

  • Who performed a specific operation

  • When an operation was performed

  • Errors that occurred when an operation was performed or attempted

  • Information about dimensions and members to aid in optimization

  • The name of an artifact used to execute an operation (such as a calc script or load file used to perform a calculation or a data load) if the artifact resides on an instance of Essbase

Table 141 lists the types of actions logged and the information included in the log message.

Table 141. Contents of the Application Log

Type of Action

Information Included

Actions performed at the database level, such as loading data, clearing data, or calculating data

  • User name

  • Date and time

  • Application and database name and time

  • If starting application—Loading Java modules, and reading and writing database and application information

  • If loading databases—Information about dimension sizes, dynamic calculation members, blocks, cache sizes, index page size, and I/O information

  • If starting databases—Application and database setup information, including reading free space information, writing database parameters, retrieving state information, writing application and database definition information, retrieving database volumes, and writing database mapping

  • If loading—Load command, parallel data load information, cells updated, elapsed load time, and the name of the rules file and data file

    Note:

    Essbase supplies the load rule name only if the client making the request (for example, Administration Services) is at the same release level as Essbase; for example, Release 7.0.

  • If calculating—the name of the calculation script used to perform the calculation

  • If reporting—the name of the report script

Actions performed at the outline level, such as restructuring

  • User name

  • Date and time

  • Information about dimension sizes, dynamic calculation members, blocks, cache sizes, index page size, I/O information, and restructure elapsed time

Actions performed at the spreadsheet level, such as lock and send

  • User name

  • Date and time

  • Action performed

Example of an Application Log

The following topics show example entries in the application log, including a standard startup and shutdown, and an example of the messages logged when an error occurs.

Example 1: Startup Messages in the Application Log

The following log example shows all the entries written to appname.log when Essbase Server starts. The log file includes information such as the time the application starts, when application and database information is read and written, when the application is ready for login requests, and when the database is loaded.

[Tue Nov 06 08:47:14 2001]Local/Sample///Info(1002035)
Starting Essbase Server - Application [Sample]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1200480)
Loaded and initialized JVM module
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1019008)
Reading Application Definition For [Sample]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1019009)
Reading Database Definition For [Basic]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1019021)
Reading Database Mapping For [Sample]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1019010)
Writing Application Definition For [Sample]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1019011)
Writing Database Definition For [Basic]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1019022)
Writing Database Mapping For [Sample]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1013202)
Waiting for Login Requests
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1013205)
Received Command [Load Database]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1019018)
Writing Parameters For Database [Basic]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1019017)
Reading Parameters For Database [Basic]

After Essbase Server starts, it writes information about the dimensions and members in the outline, such as the dimension sizes and dynamic calculation information, to the application log, as shown in the following example:

[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1019012)
Reading Outline For Database [Basic]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1007043)
Declared Dimension Sizes = [20 17 23 25 5 3 5 3 15 8 6 ]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1007042)
Actual Dimension Sizes = [20 14 20 25 4 3 5 3 15 8 5 ]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1007125)
The number of Dynamic Calc Non-Store Members = [8 6 0 0 2 ]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1007126)
The number of Dynamic Calc Store Members = [0 0 0 0 0 ]

Next, Essbase Server writes information about the blocks in the database, including the block size, the number of declared and possible blocks, and the number of blocks needed to perform calculations (you can use this information to estimate the retrieval performance for members of sparse dimensions tagged as Dynamic Calc) to the application log:

[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1007127)
The logical block size is [1120]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1010008)
Maximum Declared Blocks is [575] with data block size of [1700]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1010007)
Maximum Actual Possible Blocks is [500] with data block size of [192]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1200481)
Formula for member [Opening Inventory] will be executed in [CELL] mode
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1012710)
Essbase needs to retrieve [1] Essbase Kernel blocks in order to calculate the top dynamically calculated block.

Next, Essbase Server writes information about the caches set for each database to the application log:

[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1012736)
The Dyn.Calc.Cache for database [Basic] can hold a maximum of [2340] blocks.
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1012737)
The Dyn.Calc.Cache for database [Basic], when full, will result in [allocation from non-Dyn.Calc.Cache memory].
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1019018)
Writing Parameters For Database [Basic]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1019017)
Reading Parameters For Database [Basic]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1070013)
Index cache size ==> [1048576] bytes, [1024] index pages.
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1070014)
Index page size ==> [8192] bytes.
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1070081)
Using buffered I/O for the index and data files.
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1070083)
Using waited I/O for the index and data files.
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1019019)
Reading Data File Free Space Information For Database [Basic]...
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1006025)
Data cache size ==> [3145728] bytes, [2048] data pages
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1006026)
Data file cache size ==> [0] bytes, [0] data file pages

The final messages logged at startup refer to general database information:

[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1013205)
Received Command [Get Database Volumes]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1013205)
Received Command [Set Database State]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1019018)
Writing Parameters For Database [Basic]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1019018)
Writing Parameters For Database [Basic]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1013205)
Received Command [Get Database State]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1013205)
Received Command [Get Database Info]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1013205)
Received Command [SetApplicationState]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1019010)
Writing Application Definition For [Sample]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1019011)
Writing Database Definition For [Basic]
[Tue Nov 06 08:47:15 2001]Local/Sample///Info(1019022)
Writing Database Mapping For [Sample]

Example 2: Errors in the Application Log

The following example shows a single error. An unknown member was found in the data load file; the presence of an unknown member caused the load to fail. First, you see the request for the data load, then the error message, and, finally, information messages describing the data values changed by the data load and the data load elapsed time.

[Tue Nov 06 08:49:52 2001]Local/Sample///Info(1013210)
User [admin] set active on database [Basic]

[Tue Nov 06 08:49:52 2001]Local/Sample/Basic/admin/Info(1013091)
Received Command [DataLoad] from user [admin]

[Tue Nov 06 08:49:52 2001]Local/Sample/Basic/admin/Info(1003040)
Parallel dataload enabled: [1] block prepare threads,
[1] block write threads.

[Tue Nov 06 08:49:52 2001]Local/Sample/Basic/admin/Error(1003000)
Unknown Item [500-10] in Data Load, [0] Records Completed

[Tue Nov 06 08:49:52 2001]Local/Sample/Basic/admin/Warning(1003035)
No data values modified by load of this data file

[Tue Nov 06 08:49:52 2001]Local/Sample/Basic/admin/Info(1003024)
Data Load Elapsed Time : [0.11] seconds

[Tue Nov 06 08:49:52 2001]Local/Sample/Basic/admin/Info(1019018)
Writing Parameters For Database [Basic]

Example 3: Shutdown Messages in the Application Log

The following messages are logged when Essbase Server performs a normal shutdown. First, information about the database is retrieved. Then the database is unloaded, free space information is written, and the server shuts down.

[Tue Nov 06 08:50:26 2001]Local/Sample///Info(1013214)
Clear Active on User [admin] Instance [1]

[Tue Nov 06 08:50:34 2001]Local/Sample///Info(1013205)
Received Command [Get Database Info]

[Tue Nov 06 08:50:34 2001]Local/Sample///Info(1013205)
Received Command [Get Database State]

[Tue Nov 06 08:50:34 2001]Local/Sample///Info(1013205)
Received Command [Get Database Volumes]

[Tue Nov 06 08:50:34 2001]Local/Sample///Info(1013205)
Received Command [Get Database State]

[Tue Nov 06 08:50:34 2001]Local/Sample///Info(1013205)
Received Command [Get Database Volumes]

[Tue Nov 06 08:50:34 2001]Local/Sample///Info(1013205)
Received Command [Unload Database]

[Tue Nov 06 08:50:34 2001]Local/Sample///Info(1019018)
Writing Parameters For Database [Basic]

[Tue Nov 06 08:50:34 2001]Local/Sample///Info(1019020)
Writing Free Space Information For Database [Basic]

[Tue Nov 06 08:50:34 2001]Local/Sample///Info(1013207)
RECEIVED SHUTDOWN COMMAND - SERVER TERMINATING

Essbase Server and Application Log Message Categories

Table 142 provides error message categories for each error number range that is shown in the first column. When you receive an error message, use this table to identify the Essbase component to which the error is related. See Oracle Essbase Error Message Reference.

Table 142. Error Message Categories

Error Message Number Range

Component That Generated the Error

1001000-1001999

Report Writer

1002000-1002999

General server

1003000-1003999

Data load

1004000-1004999

General server

1005000-1005999

Backup, export, or validate

1006000-1006999

Data cache

1007000-1007999

Outline restructure

1008000-1008999

System calls, portable layer, ASD, or Agent

1009000-1009999

Restoring ASCII data

1010000-1010999

Internal (block numbering)

1011000-1011999

Internal (utilities)

1012000-1012999

Calculator

1013000-1013999

Requestor

1014000-1014999

Lock manager

1015000-1015999

Alias table

1016000-1016999

Report Writer

1017000-1017999

Currency

1018000-1018999

Not currently used

1019000-1019999

Database artifacts

1020000-102999

Spreadsheet extractor

1021000-1021999

Oracle Essbase SQL Interface

1022000-1022999

Security

1023000-1023999

Partitioning

1024000-1024999

Query Extractor

1030000-1030999

API

1040000-1040999

General network

1041000-1041999

Network—Named Pipes

1042000-1042999

Network—TCP

1043000-1049999

Not currently used

1050000-1055999

Agent

1056000-1059999

Not currently used

1060000-1060999

Outline API

106100-1069999

Not currently used

1070000-1070999

Index manager

1071000-1079999

Not currently used

1080000-1080099

Transaction manager

1081000-1089999

Not currently used

1090000-1099999

Rules file processing

1010000-1019999

Not currently used

1100000-1100999

Not currently used

1110000-1119999

Oracle's Hyperion® Web Analysis

1120000-1129999

Grid API

1130000-1139999

Miscellaneous

1140000-1149999

Linked Reporting Objects (LRO)

1150000-1159999

Outline synchronization

1160000-1169999

Outline change records

1170000-1179999

Attributes

1180000-1189999

Showcase

1190000-1199999

Oracle Essbase Integration Services

1200000-1200999

Calculator framework

Using Essbase Server and Application Logs

The following topics describe the actions you can perform on server and application logs.

For a comprehensive discussion of server and application logs, see Essbase Server and Application Logs. For information about specific error messages, see Oracle Essbase Error Message Reference.

You can also view logs using Administration Services. See “About Log Viewer” in Oracle Essbase Administration Services Online Help.

Setting the Maximum Log File Size for Essbase Server and Application Logs

You can specify the maximum log file sizes for Essbase Server (Agent) and Application log files in the essbase.cfg file using these settings:

  • AGTMAXLOGFILESIZE

  • APPMAXLOGFILESIZE

The default maximum log file size is 2 GB.

See Oracle Essbase Technical Reference.

Setting the Type of Essbase Server Messages Logged

By default, the Essbase Server log, EPM_ORACLE_INSTANCE/diagnostics/logs/essbase/essbase_0/ESSBASE.LOG, lists these types of messages:

  • Information messages, such as notification of a user action or information about an application or database

    In the following example, the admin user logged out.

    [Sun Oct 21 16:00:55 2001]Local/ESSBASE0///Info(1051037)
    Logging out user admin, active for 144 minutes 
  • Warning messages, such as a notification that an operation was not completed

    Warnings often follow errors. In the following example, the rename operation did not complete because of a previous error in the log.

    [Fri Nov 02 13:38:14 2001]Local/ESSBASE0///Warning(1051003)
    Error 1051031 processing request [Rename Application] - disconnecting 
  • Error messages, such as trying to perform an action that Essbase Server cannot perform

    In the following example, the rename operation failed because the application name already existed.

    [Fri Nov 02 13:38:14 2001]Local/ESSBASE0///Error(1051031)
    Application Testing already exists 

The following table lists the settings that you specify in the essbase.cfg file to determine what types of messages Essbase Server writes to the Essbase Server log. If you change an essbase.cfg setting, restart Essbase Server to apply the change.

Table 143. List of Essbase Server Log Message Configuration Settings

Setting

Definition

AGENTLOGMESSAGELEVEL

An essbase.cfg setting that determines whether Essbase Server writes all messages, warning messages, or error messages to the Essbase Server log

PORTUSAGELOGINTERVAL

An essbase.cfg setting that specifies how often to check the number of ports in use

Setting the Type of Application Messages Logged

By default, the application log lists the following types of messages:

  • Information messages that detail routine actions that Essbase Server performs

    In the following example, Essbase Server writes the time elapsed during a data load to the application log:

    [Fri Nov 02 13:04:15 2001] 
    Local/Sample/Basic/admin/Info(1003024) 
    Data Load Elapsed Time : [3.014] seconds
  • Warning messages that list conditions that are not deemed serious by Essbase Server

    In the following example, Essbase Server writes a statement that no data values were changed during a data load to the application log:

    [Fri Nov 02 12:43:44 2001] 
    Local/Sample/Basic/admin/Warning(1003035) 
    No data values modified by load of this data file 
  • Error messages that describe errors that occurred while performing the task

    Error messages can range from serious, such as a file not loading correctly, to very serious, such as a disk space error that causes Essbase Server to crash. In the following example, Essbase Server writes a statement to the application log file indicating that a data value was encountered before all dimensions in the outline were specified:

    [Fri Nov 02 12:53:32 2001] 
    Local/Sample/Basic/admin/Error(1003007) 
    Data Value [678] Encountered Before All Dimensions Selected, [2] Records Completed

Table 144 lists settings that you specify in the essbase.cfg file and a command that you can use in a calculation script to determine what types of messages Essbase Server writes to the application log. If you change an essbase.cfg setting, restart Essbase Server to apply the change.

Table 144. List of Application Log Message Configuration Settings

Setting

Definition

LOGMESSAGELEVEL

An essbase.cfg setting that determines whether Essbase Server writes all messages, warning messages, or error messages to the application log

TIMINGMESSAGES

An essbase.cfg setting that determines whether Essbase Server writes the duration of each spreadsheet and report query to the application log

SSLUNKNOWN

An essbase.cfg setting that determines whether Essbase Server writes error messages when it encounters an unknown member name during a spreadsheet operation to the application log

SET MSG

A calculation script setting that determines whether Essbase Server writes the following items to the application log during the duration of the calculation script:

  • A summary of calculation statistics

  • Detailed calculation statistics

  • All messages, error messages, or no messages

Viewing the Essbase Server and Application Logs

When you view a log, you are viewing a snapshot. To view an updated version of a log, close and reopen the log. You can view a log from a specific date to the present or to view the entire log.

You must have Administrator permissions to view Essbase Server logs, and you must have at least Application Manager permissions to view application logs.

  To view a server or application log, use a tool:

Tool

Topic

Location

Administration Services

Viewing Logs

Oracle Essbase Administration Services Online Help

Any text editor

 

(See the documentation for the text editor.)

Clearing the Essbase Server and Application Logs Immediately

The server and application logs use disk space on the server. Occasionally, you may need to clear entries from a log before it grows too large. Clearing the server log removes all entries in the log but does not remove the server log. Clearing the application log removes all the entries in the application log and deletes the application log. Back up each log before you clear it.

You must have Administrator permissions to clear server and application logs.

  To clear a server or application log immediately, use a tool:

Tool

Topic

Location

Administration Services

Deleting Logs

Oracle Essbase Administration Services Online Help

MaxL

To clear the Essbase Server log:

alter system clear logfile;

To clear the application log:

alter application appname clear logfile;

Oracle Essbase Technical Reference

ESSCMD

To clear the server log:

DELETELOG "";

To delete the application log:

DELETELOG "appname";

Oracle Essbase Technical Reference

Note:

To clear a server or application log each time the server or application restarts, see Clearing the Essbase Server and Application Logs Upon Restart. To conserve space by limiting the items logged in the Essbase Server log or application log, see Setting the Type of Essbase Server Messages Logged or Setting the Type of Application Messages Logged.

Clearing the Essbase Server and Application Logs Upon Restart

By default, Essbase Server appends messages to the end of the server and application logs. Using the CLEARLOGFILE configuration setting, you can set Essbase Server to clear the Essbase Server log each time the server is restarted or the application log each time the application is restarted. If you change the essbase.cfg file, restart Essbase Server to apply the change.

Note:

To clear a server or application log without restarting the server or application, see Clearing the Essbase Server and Application Logs Immediately. To conserve space by limiting the items logged in the Essbase Server log or application log, see Setting the Type of Essbase Server Messages Logged or Setting the Type of Application Messages Logged.

Setting Delimiters in the Essbase Server and Application Logs

You can change the symbol used to delimit log entries for server and application logs. Changing the delimiter also affects messages logged in the server console window. By default, Essbase Server uses spaces to delimit fields in a log, as in the following example:

[Thu May 10 20:14:46 2001]Local/ESSBASE0///Info(1051051)
Essbase Server - started

You can also use tildes, carets, colons, ampersands, or asterisks to delimit the entries in the server and application logs. If possible, choose a delimiter that does not occur frequently in the data, application, or database. The following example shows a log entry delimited by tildes (~):

Thu~May~10~20:16:13~2005~Local~ESSBASE0~~~Info~(1051051)~ \\ Oracle Essbase Server - started

Note:

If you set delimiters to anything other than spaces, you can no longer sort the log entries by date in Log Viewer.

Table 145, List of Log Message Delimiter Configuration Settings lists settings that you specify in the essbase.cfg file to determine the delimiters that Essbase Server uses in the server and application logs. If you change an essbase.cfg setting, restart Essbase Server to apply the change.

Table 145. List of Log Message Delimiter Configuration Settings

Setting

Description

DELIMITEDMSG

An essbase.cfg setting that, when set to TRUE, adds a tilde (~) between each field in the server and application logs.

To specify a different delimiter, use the DELIMITER setting.

DELIMITER

An essbase.cfg setting that specifies the delimiter used between each field in the server and application logs.

Essbase Server enables you to use the following characters as log delimiters: tilde (~), the default delimiter; caret (^); colon (:); ampersand (&); and asterisk (*).

The DELIMTER setting works only when DELIMITEDMSG is set to TRUE.

Analyzing Logs with Log Analyzer

You can use Log Analyzer to filter, search, and analyze Essbase Server logs and application logs. Based on filters you choose or create, you can view robust graphical charts for a log. An autorefresh option enables you to monitor log file information dynamically.

  To use Log Analyzer, see “About Log Analyzer” in Oracle Essbase Administration Services Online Help.

Implementing Query Logs

A block storage only feature, query logging enables Essbase administrators to track query patterns of an Essbase database. The query log file tracks all queries performed against the database, regardless of whether the query originated from Spreadsheet Add-in or Report Writer. Query logging can track members, generation or level numbers of members belonging to specific generations or levels, and Hybrid Analysis members. Query logging also offers the flexibility to exclude logging of certain dimensions and members belonging to generations or levels. Because the query log file output is an XML document, you can import the log file to any XML-enabled tool to view the log. For information about the query log file structure, refer to querylog.dtd in the ESSBASEPATH/bin directory.

To enable query logging, create a query configuration file (distinct from the essbase.cfg file) and add to the file the configuration settings that control how query logging is performed.

In the ARBORPATH/app/appname/dbname directory, create a query log configuration file. The configuration file must be named dbname.cfg, where dbname matches the name of the database. For example, the query log configuration file for Sample.Basic is basic.cfg. The output query log file is located, by default, at ARBORPATH/app/appname/dbname00001.qlg.

See the Oracle Essbase Technical Reference.

Understanding and Using the Outline Change Log

You can set Essbase Server to create an outline change log, a text file named dbname.olg, that saves outline modification information to a text file. You can review the outline change log anytime to see the changes that have been made to an outline since the log was created. This information helps you to roll back an outline to a previous version.

The outline change log is located in the following directory:

EPM_ORACLE_INSTANCE/diagnostics/logs/essbase/essbase_0/app/appname/dbname

The following topics describe the outline change log and the actions that you can perform on it.

Understanding the Contents of the Outline Change Log

Table 146 lists the types of actions written to the outline change log and the information included in the log message.

Table 146. Outline Change Log Contents

Type of Change

Information Included

Add a dimension

  • Name of dimension

  • Type of dimension (dense or sparse)

  • Dimension tag (if any)

  • Name of left sibling of dimension (if any)

  • Level number of dimension

  • Generation number of dimension

Delete a dimension

Name of dimension

Update a dimension

  • Name of dimension

  • Dimension tag

  • Type of dimension (dense or sparse)

  • Level name changes (if applicable)

  • Generation name changes (if applicable)

Rename a dimension

  • Old name of dimension

  • New name of dimension

Move a dimension to a new position

  • Name of dimension

  • Old location, including left sibling of dimension

  • New location, including left sibling of dimension

Add a member to a dimension

  • Name of new member or members

  • Unary calculation symbol for member

  • Level number of member

  • Generation number of member

  • Status of member (Store, Share)

  • Member alias (if applicable)

  • Account type of member (if applicable)

  • UDAs of member (if applicable)

  • Calculation formula for member (if applicable)

Update a member of a dimension

  • Name of member updated

  • Member properties that were updated

Rename a member of a dimension

  • Old name of member

  • New name of member

Move a member of a dimension to a new position

  • Name of member moved

  • New location

  • Names of parent and left sibling in new location

The outline change log program reads outline information from left to right. If you are looking at an outline, the left sibling is the sibling directly above (to the left of) the newly added dimension or member. This rule does not apply if the immediately preceding dimension or member is a parent. If a newly added (or moved) member is the first child of its parent, or if the member is the first dimension in the outline, the outline change log identifies the old location of the dimension or member as None.

Reviewing an Example of an Outline Change Log

When a user makes and saves changes to an outline, Essbase writes the change information into the outline change log as a group of entries. Each group of entries begins and ends with identifying information so that you can easily identify each revision, from newest to oldest.

The following change log shows one record, indicating that since the outline change log was started, the outline was modified once. First, the outline change log lists the beginning of the change, including the application and database changed; the time of the change; and the user making the change. Next, the outline change log lists the change—a member named 100-50 was added to 100 member of the Product dimension. Finally, the outline log lists the end of the change, including the application and database changed; the time of the change; and the user making the change.

[Begin Outline Change for Sample/Basic, Sat Nov 03 12:49:31 2001, By admin]
Number of member changes for dimension "Product" : 1 
Added new member "100-50" to "100" : 
Left sibling - "100-40"
Status - Store Data
Added alias "Cherry Cola" to alias table "Default" 
Unary calc symbol - Add
Level Number - 0
Generation Number - 3
[End Outline Change for Sample/Basic, Sat Nov 03 12:49:32 2001, By admin]

Creating Outline Change Logs

By default, Essbase Server does not create an outline change log. To create one, use the OUTLINECHANGELOG TRUE configuration setting in essbase.cfg. See the Oracle Essbase Technical Reference.

Note:

During a restructure, Essbase holds outline change information in memory until all updates have been made to the outline change log. Turning on the outline change log may, therefore, affect restructure performance. See Conditions Affecting Database Restructuring.

Viewing Outline Change Logs

You can view the outline change log by opening the log file in a text editor.

Setting the Size of the Outline Change Log

The default size for the outline change log (dbname.olg) is 64,000 bytes. To change the maximum size, use the OUTLINECHANGELOGFILESIZE configuration setting in the essbase.cfg file. See the Oracle Essbase Technical Reference.

When the outline change log reaches the maximum size, Essbase copies the contents of the .olg file to a new file, changing the extension to .olb. For example, when basic.olg reaches the maximum size, the contents are copied to basic.olb.

After the copy operation, the .olg file is cleared and Essbase writes new log entries to it.

Each time the .olg files reaches its maximum file size, Essbase overwrites the existing .olb file with the current contents of the .olg. Therefore, be sure to retrieve information from the .olb file before it is overwritten.

The default, minimum, and maximum file sizes for the .olg file are also automatically applied to the .olb file. For example, if you change the maximum size of the outline change log to 2 MB, the .olb file is automatically set to the same maximum size.

Understanding and Using Exception Logs

When an Essbase Server, an application, or a database shuts down abnormally, Essbase Server sometimes creates an exception log as a text file named log0000n.xcp. The following topics describe the server, application, and database exception logs and the actions that you can perform on them.

Understanding the Contents of Exception Logs

If an Essbase Server, an application, or a database shuts down abnormally and cannot restart, Essbase Server generates an exception log to help troubleshoot the problem. The location of the exception log depends on which component shut down abnormally and the amount of information that Essbase Server had available at the time. Table 148, Location of the Exception Log describes the location of the exception log for each type of abnormal shutdown.

Table 147 lists the sections of the exception log and the information included in each section. If Essbase Server could not retrieve all the information before the shutdown finished, some of the later sections may be blank.

Table 147. Contents of the Exception Log (log00001.xcp)

Section of Log

Information Included

General information

  • Date and time

  • Application and database name

  • Location of exception log

  • Process type

Use this information to determine which component shut down abnormally and when it shut down.

Machine registers and stack information

  • General registers

  • Floating point registers

  • Hex registers

  • Stack trace

  • Stack dump

Oracle Support can examine this section of the log to help determine why an abnormal shutdown may have occurred.

Application-wide configuration

  • Server and application name

  • Elapsed application time; that is, how long the application was running

  • List of modules

Use this information to determine whether the application shut down quickly and that all modules are correct. More information about modules is in the system-wide configuration section of the exception log.

Operating system resources

  • System date and time

  • Elapsed operating system time; that is, how long the operating system was running

  • Resource information, including CPU type, memory information, swap information, and drive information

Use this information to see if it is an operating system problem, such as a lack of memory.

System-wide configuration

  • Elapsed Essbase time; that is, how long Essbase was running

  • Essbase release information

  • Network information

  • Environment variables

  • Module information, including module name and release

Use this information to ensure that the release is the same for Essbase and each module, and that environment variables are set correctly.

essbase.cfg values

Values of all settings in the essbase.cfg file.

Use this information to make sure that Essbase Server is configured correctly.

License information

  • Serial number and license expiration date

  • Number of ports purchased and ports in use

  • Essbase options enabled

  • Other Oracle Hyperion products enabled

Use this information to ensure that the correct options of Essbase are installed and that you have purchased enough ports.

Client request activity

  • Server name

  • Application name

  • Thread information, including the number of threads

  • Request information

  • Detailed information about each thread, including the action it is performing, the database, user name, start time, and end time

Use this information to determine how heavy the load on the server was, based on client requests.

File information

  • Page file size

  • Index file size

Use this information to determine whether the page file or the index is too large.

Database information

Use this information to ensure that the database is set up correctly.

Database statistics

Use this information to view dimension information and to see characteristics of data blocks in the database.

Reviewing an Example of an Exception Log

The following example is of an exception log. The first section of the log lists general information about the application and database. In this example, the Essbase Server shut down:

----- Exception Error Log Begin -----

Current Date & Time:   Sat Nov 24 13:25:13 2001
Process Type:          Server
Application Name:      Sample
Database Name:         Basic
Exception Log File:    C:\HYPERION\ESSBASE\log00001.xcp
Current Thread Id:     1116
Exception Code:        0xC0000005=Access Violation
Exception Flags:       0x00000000=Continuable
Exception Address:     0x002D2249
Exception Parameters:  2
Exception Parameter 0: 0x00000000=Read Violation
Exception Parameter 1: 0x0000220A (Virtual Address)

The next section of the log lists register and stack trace information. Oracle Support can examine this section of the log to assist in determining why an abnormal shutdown occurred.

----- Machine Registers -----

General Registers:
   EAX=0x00000000  EBX=0x01358008  ECX=0x00002200

Control Registers:
   CS =0x0000001B  EIP=0x002D2249  Flg=0x00010202

Segment Registers:
   DS =0x00000023  ES =0x00000023  FS =0x00000038

Floating Point Registers:
   CWD=0xFFFF027F  SWD=0xFFFF0000  TWD=0xFFFFFFFF

Register Area (Hex):
   00 00 00 00 00 00 00 00 00 00

...continued hexadecimal listings...

Debug Registers:
   DR0=0x2F75C73B  DR1=0x75E07D39  DR2=0x1475FF16
   DR3=0x00000000  DR6=0x0000E00B  DR7=0x00000000
----- Stack -----

Stack Trace:
    0: 0x002D2249
    1: 0x002D202D
...continued stack trace listings...

Stack Dump (Hex):
   (Stack dump truncated from 1397 to 1024 bytes.)
   0x0012EA2C:  00000000 01358008 01358008 FFFFFFFF
   0x0012EA3C:  00002200 002D728C 0012EC6C 002D202D
...continued stack dump listings...

The following section of the log lists application information:

----- Application-Wide Configuration -----

Server Name:           ASPEN
Application Name:      Sample
Elapsed App Time:      00:00:01:28
Module Count:          6
Module  0:             0x00241000 = C:\HYPERION\ESSBASE\BIN\ESSSEC.DLL
Module  1:             0x002C1000 = C:\HYPERION\ESSBASE\BIN\ESSNET.DLL
...continued module listings...

The following section of the log lists operating system information. You can determine how much memory is available, how much swap space is used, and how much memory is available on each drive:

----- Operating System Resources -----

System Date & Time:    Sat Nov 24 13:25:13 2001
Elapsed OS Time:       02:03:03:10
OS Name & Version:     Windows NT 5.00
CPU Count:             1
CPU Type:              Pentium
Total Physical Memory: 327024 KB (334872576)
Free Physical Memory:  155760 KB (159498240)
Used Physical Memory:  171264 KB (175374336)
Swap Flags:
   Enabled:            Y
   Disabled:           N
   File Found:         Y
   Denied:             N
Swap file(s):          C:\pagefile.sys 
Total Swap Space:      467192 KB (478404608)
Free Swap Space:       421528 KB (431644672)
Used Swap Space:       45664 KB (46759936)
Total Drives:          5
Current Drive:         3
Drive  1:
   Drive Name:         C
   Volume Label:       
   Drive Type:         Fixed
   File System:        NTFS
   Total Drive Space:  11778448 KB
  Free Drive Space:   8592548 KB
   Used Drive Space:   3185900 KB
...continued drive listings...

The following section of the log lists system configuration information, such as paths or essbase.cfg settings:

----- System-Wide Configuration -----

Elapsed Essbase Time:  00:00:01:33
Essbase Version:       6.2.0
Essbase Description:   Ess62P0B128
Network Type:          Windows Sockets
Environment Variable:  ARBORPATH = C:\HYPERION\ESSBASE
Environment Variable:  ARBORMSGPATH = C:\HYPERION\ESSBASE\bin
Module Count:          13
Module  0:
   Module Name:        C:\HYPERION\ESSBASE\BIN\ESSUTL.DLL
   Module Version:     6.2.0.1
   Module Description: Ess62P0B128.1
   Module Use Count:   5
...continued module listings...

----- ESSBASE.CFG Configuration Values -----

Configuration Value:   JvmModuleLocation = C:\Hyperion\Essbase\java\jre13\bin\hotspot\jvm.dll
Configuration Value:   AuthenticationModule = LDAP essldap.dll x
Configuration Value:   OUTLINECHANGELOG = TRUE

The following section of the log lists license information (such as a serial number), Essbase options (such as ports purchased) and Oracle Hyperion products purchased:

----- License Information -----

Serial Number:         xxx
License Expiry Date:   
Port Count:            10
Ports In Use Count:    0
Limited Use Version:   N
Read-Only SS:          N

...continued Essbase options and Hyperion product listings...

The following section of the log lists client activity, such as using Administration Services to view databases or using the Spreadsheet Add-in to view databases:

----- Client Request Activity -----

Server Name:           ASPEN
Application Name:      Sample
Total Request Threads: 5
Avail Request Threads: 6
Total Requests:        56
Average Requests:      48.000000
Weighted Average:      7.440000
Statistics Per Minute:
   Current Requests:   48
   Minimum Requests:   48.000000
   Maximum Requests:   48.000000
Thread Count:          5
Thread Id 1444:
   Request Name:        List Objects
   Database Name:       Basic
   User Name:           admin
   Start Time:          Sat Nov 24 13:24:37 2001
   End Time:            Sat Nov 24 13:24:37 2001
...continued thread listings...

----- Exception Error Log End -----

Viewing Exception Logs

You can view the exception change log by opening it in any text editor. The location of the exception log depends on which component shut down abnormally and the amount of information that Essbase Server had available at the time.

Table 148 describes the location of the exception log.

Table 148. Location of the Exception Log

Component That Shut Down

Location of the Exception Log

Essbase Server

The log is in the ARBORPATH directory; for example:

EPM_ORACLE_INSTANCE/EssbaseServer/log00001.xcp

Application

If the application name is unknown, the log is in the ARBORPATH/app directory. For example:

EPM_ORACLE_INSTANCE/EssbaseServer/essbaseserver1/app/log00001.xcp

If the application name is known, the log is in the application directory. For example, if the Sample application shut down abnormally:

EPM_ORACLE_INSTANCE/EssbaseServer/essbaseserver1/app/Sample/log00001.xcp

Database

If the database name is unknown, the log is in the application directory; for example, if the Basic database shut down abnormally:

EPM_ORACLE_INSTANCE/EssbaseServer/essbaseserver1/app/sample/log00001.xcp

If the database name is known, the log is in the database directory; for example, if the Basic database shut down abnormally:

EPM_ORACLE_INSTANCE/EssbaseServer/essbaseserver1/app/sample/basic/log00001.xcp

Overwriting or Retaining Existing Logs

By default, Essbase Server creates one or more exception logs each time the server shuts down abnormally. Subsequent exception logs are numbered sequentially; for example, if log00001.xcp exists, the next log is named log00002.xcp.

While you can use the EXCEPTIONLOGOVERWRITE TRUE configuration setting in essbase.cfg to overwrite the existing exception log file instead of creating a new log file, Oracle recommends that you use the default setting of FALSE. An abnormal shutdown may create multiple exception log files, and the first log file created during the shutdown is often the most descriptive. See Oracle Essbase Technical Reference.

Understanding and Using Dimension Build and Data Load Error Logs

Essbase Server writes errors that occur during a dimension build or data load in error logs. The log that Essbase Server chooses for errors depends on the operation that you perform, such as a dimension build or a data load, and how you perform it, such as using Administration Services, or MaxL. The following topics describe the location of dimension build and data load errors and the actions that you can perform on dimension build and data load error logs.

Understanding and Viewing Dimension Build and Data Load Error Logs

The dataload.err log contains errors that occurred during a dimension build or a data load. The logs also contain the records that failed to load. After you fix the errors, you can reload the logs. See Loading Dimension Build and Data Load Error Logs.

Essbase Server writes errors that occur during a dimension build or data load to the following error logs:

Table 149. Location of Dimension Build and Data Load Error Logs

Operation

Location of Error Log

Dimension build

EAS_HOME/client/dataload.err

Data load with a rules file

EAS_HOME/client/dataload.err

Data load without a rules file

ARBORPATH/app/appname/appname.log

Note:

If the data load or dimension build fails and there is no error log, see Checking Error Logs for a description of possible causes.

To set the location and file name of dimension build and data load error logs, see “Performing a Data Load or Dimension Build” in Oracle Essbase Administration Services Online Help.

  To view the dimension build and data load error logs, open them in any text editor.

Reviewing an Example of a Dimension Build and Data Load Error Log

The following data log entry indicates that because the 500 member did not exist in the outline, no data was loaded to it.

\\ Member 500 Not Found In Database
500   500-10   500-10-10

To resolve this problem, you can perform either of the following actions and restart the load:

The following dimension build log entry indicates that the 600-20 member is not the parent of the 600 member. Ensure that you use the correct rules file with the correct text file. The record looks like it is for a level (bottom-up) build, but the error message indicates that Essbase Server is trying to perform a generation (top-down) build. After you correct the problem, restart the dimension build.

\\Record #2 - Incorrect Parent [600-20] For Member [600] (3307)
600-20-10   600-20   600

Setting the Maximum Number of Errors

The default size of the dataload.err files is 1,000 records. When the log reaches this size, Essbase Server no longer writes errors to the log. The dimension build or data load, however, continues.

Using the DATAERRORLIMIT configuration setting, you can specify the number of records (1 to 65,000) that are logged in the dataload.err log files. If you change the essbase.cfg file, restart Essbase Server to apply the change.

Loading Dimension Build and Data Load Error Logs

If the dimension build or data load fails, you must determine whether the Isolation Level transaction setting is Committed or Uncommitted. If the transaction setting is Committed, you must restart the data load from the beginning. If it is Uncommitted, you can load only the records that failed by loading the error log. Reloading only the failed records is much faster than reloading every record.

  To reload the error log:

  1. If you load from the server, change the file extension from .err to .txt. For example, change the dataload.err file to dataload.txt.

    If you load from the client, you can leave the .err extension.

  2. Fix the problem that caused the dimension build or data load to fail. Fixing the problem might involve changing the outline, the text in the error log, or the rules file.

    Check whether the following conditions are true:

  3. Load the error log using the appropriate rules file.

    See Understanding Data Loading and Dimension Building.