Oracle® Application Server Wireless Administrator's Guide
10g Release 2 (10.1.2) B13820-02 |
|
Previous |
Next |
This chapter describes activity logging for Oracle Application Server Wireless.
The OracleAS Wireless Performance Monitor provides system administrators with information on the running status of Multi-Channel Server, Notification Engine, Messaging Server, data feed engine, and the Async Listener. The Performance Monitor also provides statistical information, enabling system administrators to study past performance and historical data to perform future trend analysis.
OracleAS Wireless integrates with the OEM (Oracle Enterprise Manager) framework to provide a Web-based monitoring tool which displays metrics for diagnosis based on the data logged.
The Activity Logger provides the common logging framework used by the runtime components. Database logging is handled asynchronously because the runtime logging on the database carries a huge overhead. The runtime data is generated as files, which are less expensive. The data thus generated is picked up by the Performance Monitor framework and written onto the database. In this way, database logging is handled asynchronously without impacting the runtime performance of the respective servers.
For the Multi-Channel Server, the logging process is handled in the callback of the different events, which are generated (that is, at the beginning of a session and its end). These events are enabled by default for logging purposes. If the administrator chooses not to generate the logging, then there is a provision to turn off the Wireless web server logging. When this happens, the callbacks do not generate log files. For other modules, such as the Notification Engine, Async Listener, and Transport Server, logging into the files occurs when the corresponding request is fulfilled. The Data Feeder logs the runtime data directly to the database in batches.
The generated log files follow a common directory structure, which can be configured using the OracleAS Wireless system management functions at the node (process) level. The top level Logging Directory is specified here, the Logger Framework, which all modules use, creates sub-directories: process, status and archive. At runtime, the log files generated by the different modules have distinct file suffixes. These files are stored in the process directory and the file names and the machine name are enqueued into a SYS_LOGGER_QUEUE
. The file can be made available for processing based on a configurable file size. Additionally, OracleAS Wireless supports log file aging by which the log file is automatically made available for processing after a fixed time. This ensures that the skew introduced by the asynchronous nature of the logging process is reduced. The log file age (also known as close frequency) can be configured using the system management functions for the site-level configuration of the Performance Monitor.
The modules (which generate these log files with distinct suffixes), provide a Database Log File Handler Class, which processes these files. The handler classes are created by extending a common abstract class, which provides the connection and directory and file information. The handler to suffix mapping is pre-seeded in OracleAS Wireless during installation.
The Performance Monitor starts up multiple threads, each containing an instance of the different handlers. Each logger thread dequeues the filenames belonging to the local machine, inspects the file suffix and delegates it to the corresponding handler class for further processing.
The administrator can control the number of Performance Logger threads using the system management functions for the process-level configuration.
Note: Since these tables tend to grow during the life of the servers, you should purge the data from these tables periodically. |
PTG_SERVICE_LOG
Table 12-1 describes the PTG_SERVICE Log.
Table 12-1 Service Activity Log
Column Name | Description |
---|---|
Service_id |
The Object Identifier for the invoked service (application). |
Service_name |
The name of the invoked service. |
ptg_instance_id |
The unique identifier identifying the instance. |
final_service_id |
The Object Identifier of the final service (that is, master service folder). |
final_service_name |
The name of the final service. |
session_id |
The Session Identifier of the Session in whose context the service is invoked. |
bookmark |
The application bookmark. |
service_type |
The type of service. |
invocation_hour |
The hour when the service was invoked. |
invocation_time |
The date when the service was invoked. |
response_time |
The response time for the service. |
request_status |
The status of the request. Non-zero values indicate the error number. |
error_description |
The error message (if there was an error while invoking the service). |
user_id |
The Object Identifier for the user. |
user_name |
The name of the user. |
remote_address |
Gateway IP address and host name. |
host_id |
Host IP address and name. |
logical_device |
The device where the application was invoked. |
external_user_id |
The external user id of the which forwarded this request. |
external_user_name |
The external user name of the which forwarded this request. |
adapter_type |
The type of the adapter which is servicing this request (not logged currently). |
adaptor_time |
Time taken by the adapter to service this request. |
transformation_time |
Time taken by the transformer to service this request. |
timestamp |
Logged event timestamp (generated by trigger). |
Table 12-2 describes the DATAFEEDER_METRICS activity log.
Table 12-2 DATAFEEDER_METRICS
Column Name | Description |
---|---|
HOST_NAME |
The host name of this data feeder. |
INSTANCE_NAME |
The instance name of this data feeder. |
FEED_NAME |
The name of this data feeder. |
UPDATE_DATE |
The date and time of this batch run. |
ACTUAL_BATCHTIME |
The actual time spent on this batch. |
DOWNLOADED_ROWS |
The publishing rate (data rows stored). |
ERROR_DESCRIPTION |
Errors encountered for this batch for future use. |
Table 12-3 describes the PTG_ALERT_ENGINE_STATS log.
PTG_ALERT_ENGINE_STATS
Table 12-3 Notification Engine Activity Log
Column Name | Description |
---|---|
host_name |
The host name of the machine this alert server instance is running on. |
instance_name |
The alert instance name. |
malert_name |
The name of the master alert service which generates this alert message. |
malert_oid |
The Object Identifier of the master alert service which generates this alert message. |
subscriber_name |
The name of the subscriber to receive this alert message. |
device_address |
The device address this alert message is delivered to. |
device_oid |
The device address object identifier. |
device_type |
The type of the device. |
message_id |
The message id generated by the message gateway for this alert message. |
message_length |
The length of this alert message. |
message_status |
The dispatch status of this alert message. |
dispatch_time |
The time stamp of this alert message being dispatched to the message gateway. |
error_description |
The error message - if there was an error while dispatching this alert message. |
ASYNC_STATISTICS_LOG
Table 12-4 Async Listener Activity Log
Column Name | Description |
---|---|
host |
Name of the host where the Async server is running. |
instance_id |
The unique id to identify an instance of the Async server. |
source_addr |
The source address of the received message. |
dest_addr |
The destination address of the received message. |
delivery_type |
The network delivery type of the message. The possible values are:
|
encoding |
The character encoding for the message. |
queue_size |
The number of messages waiting in the queue when the message is received. |
msg_rcv_time |
The message received time. |
msg_rcv_hour |
The message received hour. |
start_execute_time |
The time to start invoking the service requested from the message. |
end_execute_time |
The time to finish the service invocation. |
error_description |
The error description on failure of the service invocation. |
service_id |
The ID of the service the user is requesting to access. |
async_name |
The Async short name of the service the user is requesting to access. |
message_size |
The size of the message. |
timestamp |
Time when the message is logged into the database |
TRANS_LOG
Table 12-5 Message Server Activity Log
Column Name | Description |
---|---|
MESSAGE_ID |
The message id assigned by the transport, which is unique for every message. |
MESSAGE_TYPE |
The type of the message, which can be 'R' for received message, 'S' for message to send. |
DELIVERY_TYPE |
The delivery type, which can be:
|
REQUEST_INSTANCE_HOST |
The transport instance host on which the message is accepted. For a sending message, this is the host of the client; for a received message, this is the host of the driver. |
REQUEST_INSTANCE_ID |
The OracleAS Wireless instance id on which the message is accepted. For a sending message, this is the instance id of the client. For a received message, this is the host of the transport server that the driver is on. |
REQUEST_BEGIN_TIME |
The time the message is to be accepted. For a sending message, it is the time the send method is called. For a received message, it is the time the |
REQUEST_END_TIME |
The time the message is accepted. For a sending message, it is the time the send method returned. For a received message, it is the time the |
HANDLE_INSTANCE_HOST |
The host name on which the message is dequeued to a process. For a sending message, it is the host on which the driver ran. For received message, it is the host on which the driver ran. |
HANDLE_INSTANCE_ID |
The OracleAS Wireless instance id on which the message is dequeued to process. |
HANDLE_BEGIN_TIME |
The time the dequeue method to be called. |
HANDLE_END_TIME |
The time the message is processed. For sending message, the message is sent. For received message, the message is processed by the listener. |
ENQUEUE_BEGIN_TIME |
The time the enqueue call started. |
ENQUEUE_END_TIME |
The time enqueue call returned. |
DEQUEUE_BEGIN_TIME |
The time the dequeue call started. |
DEQUEUE_END_TIME |
The time the dequeue call returned. |
PROCESS_STATUS_CODE |
The status code of the message processing, which can have the values unknown, failed, succeeded, ignored. |
PROCESS_BEGIN_TIME |
The time the processing call was called. For a sending message, the driver's send method was called. For a received message, the listener's |
PROCESS_END_TIME |
The time the processing call returned. For a sending message, the driver's send method returned. For a received message, the listener's |
System Logging
The System Logger logs the runtime debug log information generated by the runtime processes. The OracleAS Wireless Server generates log information, which is stored in the log file. The different levels of logging and the log file size can be configured as follows:
To configure the System Log file using OracleAS Wireless system management at either the site or process level:
Enter a name for the log file name pattern. The default is sys_panama.log.
This pattern enables you to identify the log file generated by the different server processes. Currently, the only supported pattern is <filename>{0}.log
. For example, sys_panama{0}.log would generate a file with a name sys_panama<timestamp in long>.log. Using this pattern enables administrators to identify log files pertaining to the different server processes based on their start timestamp. The setting of the pattern is optional.
At the OracleAS Wireless server or host level, the log directory may be specified using Wireless Management. The default log directory is the default temp directory for that operating system (typically c:\temp
for windows and /var/tmp
on UNIX).
In the Maximum Log File Size field, enter the maximum number of log file size (in bytes).
Select a log level. The log can contain any of the following: Warning, Error, or Notify. The default is Warning, Error, and Notify.
See also Section 3.4.