Oracle9i Application Server Wireless Edition Configuration Guide
Release 1.1

Part Number A86701_02

Library

Solution Area

Contents

Index

Go to previous page Go to next page

4
Logging

The document describes the logging capability of Wireless Edition. Each section of this document presents a different topic. These sections include:

4.1 Overview

Wireless Edition generates logging information for both the server and development client components.

4.2 Database Logging

Wireless Edition database logging records each authenticated service invocation request and each successful user session. Database logging is required for performance monitoring and measurement using Oracle Enterprise Manager. The logged information includes service access patterns, response times for services, and the number of sessions. This data can be used by remote management tools to display results such as service access patterns, throughput, and average response times. Database logging is handled asynchronously.

4.2.1 Configuring the Database Logger

The database logger of a Wireless Edition instance must point to a database schema to log the information. This configuration is done in the System.properties file of each Wireless Edition instance.

#
#System Logger related parameters
#

# Number of minutes after which the logger thread wakes up to flush
# the log entries to the database. This parameter is optional.
SystemLog.logger.wakeupFrequency=10

# The maximum number of entries cached by the logger thread. 
# This parameter is optional.
SystemLog.logger.maxSize=100

# Whether service logging should be enabled
SystemLog.enableServiceLogging=true

# Whether session logging should be enabled
SystemLog.enableSessionLogging=true

# The request listener class 
locator.request.listener.classes=oracle.panama.core.admin.SystemLogger

# The session listener class 
locator.session.listener.classes=oracle.panama.core.admin.SystemLogger

# Enable event request logging
event.before.request=true
event.request.end=true	
event.request.error=true
event.after.request=true

# Enable event session logging
event.session.begin=true
event.session.end=true

# System Log Database connect string <String>
# Syntax for this property is similar to db.connect.string
# System Logs can be present in a separate database
# 
# NOTE: For the OEM cartrige queries, Make sure the user specified below has 
select access to the V$ tables. 
#   Usage example: log in as system and say "grant select any table to %PANAMA_
USERNAME%"
#SystemLog.db.connect.string=%PANAMA_USERNAME%/%PANAMA_USER_PW%@%PANAMA_
HOST%:%PANAMA_PORT%:%PANAMA_SID%

If the SystemLog.db.connect.string parameter is set, logged information is stored in a separate database. This parameter should not be set if the logged information is to be stored in the same repository.


Note:

The database user name used here (the one replacing %PANAMA_USERNAME%) must have select access to all tables. In this example "PANAMA" is Wireless Edition. 


4.2.2 Database Table Contents

Data logged to the database is stored in two tables, ptg_service_log and ptg_session_log.

Table 4-1 Contents of the ptg_session_log Table

Column Name  Description 

session_id 

The identifier of the session. 

user_id 

The Object Identifier (OID) of the user of the session.  

user_name 

The user name. 

ptg_instance_id 

A unique identifier, for the database instance. 

logical_device 

The logical device which invoked the service. 

login_time 

The timestamp when the session was created. 

login_hour 

The hour when the session was created. 

expiry_time 

The timestamp when the session expired. 

timestamp 

The time when the data is logged. 

Table 4-2 Contents of the ptg_service_log Table

Column Name  Description 

service_id 

Object Identifier (OID) for the invoked service. 

service_name 

Name of the invoked service. 

ptg_instance_id 

Unique identifier, for the database instance. 

final_service_id 

OID of the final service, for example the master service or folder. 

final_service_name 

Name of the final service. 

session_id 

Session identifier for which the service was invoked. 

service_arguments 

Arguments of the service, in XML format. 

bookmark 

External link, if the invoked service is a bookmark. 

service_type 

Type of service. 

invocation_hour 

Hour when the service was invoked. 

invocation_time 

Date when the service was invoked. 

response_time 

Response time for the service.  

request_status 

Status of the request, a non-zero value indicates an error number. 

error_description 

Error message, if one occurred while invoking the service. 

user_id 

OID for the user. 

user_name 

Name of the user. 

remote_address 

Host IP address and name. 

logical_device 

Logical device which invoked the service. 

external_user_id 

External user ID. 

external_user_name 

External user name. 

adapter_type 

Type of adapter. 

adapter_home 

Time taken by the adapter. 

transformation_time 

Time taken by the transformer. 

timestamp 

Time when the data is logged. 

4.3 Service Designer Logging

By default, the Service Designer writes error information to the log directory of the Service Designer home directory. You can modify this setting, and the log naming pattern, in the preferences.xml file. The file is in the WE_HOME/tools/ServiceDesigner/resources directory.

4.4 Server Logging

The Wireless Edition writes server error information to the files and directory specified in the System.properties file. You can open the log files directly, or view them from the Wireless Edition Runtime Information and Management interface (the Probe interface) at port 8090. Click the "Files" link.

The Wireless Edition specifies these types of errors:

Table 4-3 Server Error Information

Error  Value 

ERR_SERVICE_UNAVAILABLE 

PTG-001 

ERR_SERVICE_ERROR 

PTG-002 

ERR_SERVICE_NOT_FOUND 

PTG-003 

ERR_CONFIGURATION_ERROR 

PTG-004 

ERR_INTERNAL_ERROR 

PTG-005 

ERR_DATABASE_ERROR 

PTG-006 

In addition to error messages, the Wireless Edition provides extensive runtime exception logging. When fatal exceptions occur, the Wireless Edition logs the exceptions and stack traces in the global log file. If you need to contact Oracle Support Services, you should have the log information available.

4.5 Transaction Logging

The transaction log is a log file on the Wireless Edition server that provides information regarding user access. To enable transaction logging, you must include transaction logging as a log level in the System.properties file. For example:

log.level=Warning, Error, Notify, Transaction 

You can use the System.properties file to set the directory to which the Wireless Edition writes transaction logs, and to specify a file name pattern for the log files. You can also configure the transaction record pattern.

If you enable transaction logging when a user accesses a service that has a cost value set, the transaction log generates data. You can set a cost for a master service using the Wireless Edition Service Designer. You can access the transaction log data programmatically, to generate billing information or to integrate the Wireless Edition transaction information with an external billing management system.

The following sample shows the log results of four stock quote queries by a single user. The sample uses the default logging pattern, which you can modify in the System.properties file. It lists the time of access, the user name (Sample), the service, and the price per access (25):

[11/14/99 4:03:26 PM] Sample   /master/OnlineQuoteOracle 25
[11/14/99 4:03:29 PM] Sample   /master/OnlineQuoteOracle 25
[11/14/99 4:03:35 PM] Sample   /master/OnlineQuoteOracle 25

4.6 Configuring the Runtime Monitor and Management

The probe is a daemon that displays runtime information about:

The probe performs simple runtime management including:

By default, installation of Wireless Edition installs and initiates the probe runtime monitor with the listening port 8090. To access the probe from a browser enter the following URL:

http://host_name:8090

You can configure the probe component by editing the www-server.properties file in the WE_HOME/server/classes/oracle/panama/core/probe directory. The following daemon manages the implementation:

oracle.panama.core.probe.WebServer 


Go to previous page Go to next page
Oracle
Copyright © 2001 Oracle Corporation.

All Rights Reserved.

Library

Solution Area

Contents

Index