Blog

Extensive Tracing and Logging in SAP BusinessObjects Part 1
bobj-tracing-logging
Extensive Tracing and Logging in SAP BusinessObjects Part 1

Troubleshooting and finding the root cause of the BusinessObjects issues might be challenging. With different types of logging and tracing we can find the root causes of the issues. In this article we will be discussing different types of logging in BusinessObjects.

For easy understanding of the technique, I will divide the logs mechanism into different phases.

  • Server level logging
  • Web Applications logging
  • Client Tools logging

Server level tracing

Server level tracing will help to identify issues related BOBJ services and different type of components. BusinessObjects is combination of different types of services each type of service has its own role.

APS server is one of key server which has around ~27 services. Which is responsible for Webi UNX layer, Promotion Management, Platform search, Webi Charts, OLAP connectivity etc. If you have done APS sizing logging would be easy to enable on the specific service.

Webi Processing Servers – Any Webi related errors or issues enabling logging on Webi Processing server would help to find the issues

Crystal Report Server – Crystal has multiple services involved Crystal Processing Server, Crystal Cache servers, Report Application server. To identify Crystal issues enabling loggin on Crystal processing servers gives better insight of the issues.

Dashboard Servers – Issues related to Dashboard Designer objects can be found by enabling loggin on Dashboard processing servers

DesignStudio Server (Analysis Application Service) – Enabling logging on Analysis application services generates the logs from DesignStudio components

Enabling Logging from CMC :

This is the easiest and quickest way to enable logging. This require specific Server restart. It may be issue in case of Production systems. Other option without service restart is to enable logging is from bo_trac.ini file. Will be discussing in following sections.

Login to CMC with Administrator or user from Administrator Group account

  • Navigate to Servers
  • Right click on server click “Properties”
  • Look for Trace Log Service section. Change “Log Level” to “High”
  • Click “Save & Close” and Restart server.
bobj-different-level-logging

Different levels of logs that exists are

  • Unspecfied  – Critcal exceptions will be logged with this setting and uses settions from .ini file
  • None –  No logs will be written
  • Low –  only errors will be logged. Service startup/shutdown will be logged. Information and warnings are ignored
  • Medium – This trace writes Errors, Warnings and all status logs
  • High – This enables verbose logging and capture all kinds of logs. Server will slow down with this type of logging.

Logs Location:

Logs will be generated by default under <BO_INSTALL>/SAP BusinessObjects Enterprise XI 4.0/logging/

Logs location can be changed for individual server or for the whole system.

To change location of logging for one server, right click on server and open “Properites”  in Command line parameters update value for “-Dbusinessobjects.logs.home” to the directory where logs wanted to generate.

To change location of logs for all servers you have to update Node placeholder . In servers section , right click on node and select “Placeholders”. From the window look for %DefaultLoggingDir% and change the location

cmc-bobj-logging-servers

Tip: You can enable logging on multiple servers at a same time by selecting multiple servers > Right click “Edit Common Services” . You will see Log level from drop down. Select desired level of log and click “OK”.

cmc-servers-logging-location cmc-servers-logging-location1

Enabling Logging from BO_trace :

With BO_trace logging we can capture logs like CMC but no restart is required. In case of Production systems this type has advantage.

BO_trace.ini is located under <BO_INSTALL>/SAP BusinessObjects Enterprise XI 4.0/conf/ . Setting values for sap_log_level & sap_trace_level parameters will generate logs.

By default values are set to error mode.

sap_trace_level = trace_error; sap_log_level = log_error;

Possible values for Trace and Log levels are

sap_trace_level trace_info
trace_error,
trace_none
trace_debug
trace_path
trace_debug is the highest level of tracing
sap_log_level log_info
log_warn
log_error
log_fatal
log_none
log_info is the highest level of tracing

Another advantage of bo_trace.ini is logs can be traced depends on server/service type. Webi processing server can have one type of logging and CMS can have another type of logging.

if (process == "<SERVER TYPE>_<SIANAME>.<SERVER NAME>") {
sap_log_level=log_warning; sap_trace_level=trace_path; }

For Webintelligence server which has server name as WebIntelligenceProcessingServer the log file would be as below.

if (process == “webiserver_MySIA.WebIntelligenceProcessingServer") {
sap_log_level=log_warning; sap_trace_level=trace_path; }

For Adaptive processing server log file can be written as below.

if (process == “aps_MySIA.AdaptiveProcessingServer") {
sap_log_level=log_warning; sap_trace_level=trace_path; }

After updating bo_trace.ini file no restart of the server is required. Logs will be generated in default logs directory. In case of any syntax errors bo_trace.err file will be created in the same directory as bo_trace file.

Stay tuned for Part-2 with client tools tracing..

Comments