Administration Guide

     Previous  Next    Open TOC in new window    View as PDF - New Window  Get Adobe Reader - New Window
Content starts here

Introduction to Oracle TSAM

This topic contains the following sections:

 


Overview

Oracle Tuxedo System and Application Monitor (TSAM), is an Oracle Tuxedo add-on product. Tuxedo is widely used by enterprises that develop and use in mission-critical applications. It acts as the infrastructure layer in distributed computing environments. The complexity of Tuxedo and the applications running on top of it makes performance measurement extremely complex.

Oracle TSAM monitors the major performance sensitive areas of a Tuxedo-supported enterprise computing environment. It can be used to monitor real-time performance bottlenecks and business data fluctuations, determine service models, and provide notification when pre-defined thresholds are violated.

 


Oracle TSAM Features

The following is a list of Oracle TSAM features:

 


Oracle TSAM Components

Oracle TSAM includes two components:

Oracle TSAM Agent

The Oracle TSAM Agent handles all Tuxedo-side back-end logic. It works in conjunction with the Oracle TSAM Manager, and includes the following sub-components:

For more information, see Oracle TSAM Agent.

Oracle TSAM Manager

The Oracle TSAM Manager is built on J2EE technology. It includes following components:

For more information, see Oracle TSAM Manager.

Oracle TSAM Architecture

Figure 1-1 shows the Oracle TSAM architecture.

Figure 1-1 Oracle TSAM Architecture

Oracle TSAM Architecture

 


Oracle TSAM Concepts

Call Path Monitoring

Tuxedo is typically used by a client program (not necessarily a Tuxedo client process) that calls a service to perform a business computing logic scenario. The service implementation is completely transparent to the caller. This type of middleware transparency provides many benefits for development, deployment, and system administration. However, from a monitoring perspective, it is difficult for the end user or administrator to figure out what happens “behind the scene”. Oracle TSAM call path monitoring helps to alleviate this problem.

Call Path Tree Definition

A simple Tuxedo application call triggers a set of service invocations. The involved services constitute a tree (“call path tree”). A call path tree strictly defines the following factors:

Monitoring Initiator

A “monitoring initiator” is a process that “initiates” tracking a call path tree. The process can be a Tuxedo client, application server, or client proxy server (WSH/JSH). A typical scenario is when a tpcall/tpacall is invoked by the monitoring initiator; call path monitoring begins. All the back-end services involved in this call are displayed on the call path tree representation in the Oracle TSAM Console.

Note: Currently only tpcall/tpacall can trigger a call path monitoring. Other communication models are not supported.

A Tuxedo application server performs two functions:

Service Monitoring

Service monitoring focuses on Tuxedo service execution status. It does not care about call correlation, as call path monitoring does. Service monitoring can be used with call path monitoring together or performed independently.

System Server Monitoring

Tuxedo has two important system servers: BRIDGE and GWTDOMAIN. BRIDGE connects multiple Tuxedo machines within a Tuxedo domain. GWTDOMAIN connects one Tuxedo domain with another. The system server monitoring tracks message throughput, pending sent messages, and awaiting reply messages on each network link.

Transaction Monitoring

A critical use of Tuxedo is transaction monitoring. Tuxedo coordinates activities in a distributed transaction with an XA compliant resource manager, such as a database. Oracle TSAM transaction monitoring tracks each XA call triggered in a transaction allowing you to clearly identify where a global distributed transaction is bottle necked.

Monitoring Policy

Monitoring policy controls monitoring behavior.

Performance Metrics

Oracle TSAM performance metrics are listed as follows:

Note: DOMAINID:MASTERHOSTNAME:IPCKEY LMID PROCESSNAME PID TID COUNTER

Listing 1 shows an example of a Correlation ID. The monitored call is started by the program “bankclient” with process ID 8089 and thread ID 1 on machine “SITE1” on Tuxedo domain “TUXDOM1”. The master is “bjsol18” and IPCKEY in TUXCONFIG is “72854”.

Listing 1 Correlation ID Example
TUXDOM1:bjsol18:72854 SITE1 bankclient 8089 1 99

 


Oracle TSAM Use Cases

Oracle TSAM is built on top of Tuxedo and has unique service, call, and transaction tracking capabilities. Enterprise organization usually have many widely distributed services deployed and one client request that requires complex back-end service coordination to perform the processes.

It can be difficult for an administrator to figure out what exactly is happening during these interactions. Oracle TSAM call path monitoring helps to alleviate this problem.

The followings are FAQs will help you to better understand how Oracle TSAM works with your applications:

Understanding Your Applications

What happens behind a simple call?

Enabling call path monitoring for a Tuxedo client or application server allows you to find out all the information behind a simple tpcall/tpacall. The tracking points span multiple machines and multiple domains. You can clearly see the following information in the call path tree:

What about my services?

Service monitoring enables you to measure your service response time, IPC queue length, and execution status. Service monitoring provides the following information:

Is my network busy?

Oracle TSAM allows you to monitor the network connection attached to your local domain gateways. You can easily find which link is busy and its data fluctuation trend. You have more in-depth understanding of the business data flow model between departments and organizations.

Who participates in my transaction?

Oracle TSAM monitors the transaction XA calls. Transaction participants are listed on the transaction monitoring page. For a large distributed transaction, a slow branch can result in the entire transaction being slowly completed. Oracle TSAM lets you know who the transaction participants are, and how much time is used during XA calls.

Solving Application Performance Problems

Why is the service response time is slow recently?

Turn on the call path monitoring for a particular call to investigate the following:

My back-end services failed, but I don’t know which one.

Turn on call path monitoring. You can find the service execution status for this call.

How many kinds of call paths are in my application?

Turn on call path monitoring using an adequate sampling policy. Oracle TSAM will tell you how many call paths (a “call pattern”) exist in your application.

Why is my global distributed transaction completed slowly?

Turn on Oracle TSAM transaction monitoring. You can see the execution time used by the transaction participants.

I want to correlate local transactions with remote transactions.

Turn on Oracle TSAM transaction monitoring for all involved processes and GWTDOMAIN. The Oracle TSAM Console shows you the transaction mapping between local and remote transactions.

I want to know what is the peak time that my local domain uses resources from the remote domain, and how busy it is.

Use Oracle TSAM system server monitoring on the GWTDOMAIN. Oracle TSAM records the information for you, and shows you the throughput trends.

Can I check program request information?

Turn on call path monitoring with the proper monitoring policy and then use “tpgetcallinfo”. The following information is provided.

The monitoring initiator process, tpgetcallinfo(), can also tell you the total time used.

Improving Application Performance

Are my services too fine grained?

In some cases, too many services supporting a request may add to performance overhead. Use call path tree to investigate. The service number and the tree depth are key analysis factors.

Are my services deployed properly?

Some services are called more frequently than others. Use call path monitoring to gather the information, and re-consider the service deployment. It is best to have the most used services located on the local machine and LAN. Services across domain services should be used carefully.

Do I have too many servers configured?

Oracle TSAM provides a central view of your Tuxedo applications with multiple domain support. Using Oracle TSAM Console allows you to easily see how many domains, machines, servers and services are configured.

I want to be notified when a service execution fails or the response time exceeds a pre-defined threshold

You have two ways to do this. One is using Oracle TSAM plug-in level event trigger; the other is to define alerts using the Oracle TSAM Manager console.

 


Quick Start

To add Oracle TSAM functionality to an existing Tuxedo application, do the following steps:

  1. Install Oracle TSAM
  2. Install the Oracle TSAM Agent and the Oracle TSAM Manager. For more information, see the Oracle TSAM Installation Guide.

  3. Deploy Oracle TSAM Agent and Oracle TSAM Manager
  4. For more information, see the Oracle TSAM Deployment Guide.

  5. Find Your Tuxedo Configuration
  6. Login to the Oracle TSAM Manager Console (for example: http://localhost:8080/tsam).

    Note: The first time you login to the TSAM console you must set the admin password.

    Go to TSAM > Administration > Tuxedo Configuration to find your Tuxedo configuration. For more information, see the Oracle TSAM Console User Guide.

  7. Configure Monitoring Policy
  8. Monitoring policy defines what and how you want to monitor. The monitoring policy can be configured at either TSAM Manager side or TSAM Agent side.

    For more information, see Monitoring Policy Management and Configuring Monitoring Policies in the “Oracle TSAM Agent User Guide.”

    For more information, see Policy Management in “Oracle TSAM Console User Guide.”

    • Typical Monitoring Policy

    Go to TSAM > Administration > Policy Management, click “Create” to enter the “Policy Specification” page. Input “tsampolicy” in the “Name:” input field.

    Monitor call path initiated from a particular server

a. Click “New” button to show the “Policy Definition” page.
b. In the left panel “Tuxedo Component”, select the “Domain”, “Machine”,”Group” and “Server” in the drop down lists.
c. In the right panel “Policy Management Definition” select the “Enable” checkbox of “Call path
d. Click “Add” button
e. Select that policy entry just created in “Monitoring Policy Set” table and click “Enable” button.

• Check Oracle TSAM Agent results from Tuxedo

If you want to monitor a call path from a particular client process, you must use the TSAM Agent TMMONITOR environment variable for that client.

• Monitor services of a particular server

Same steps as call path monitoring policy set, except you must select the Services Enable” check box.

• Monitor a Domain Gateway

Same steps as call path monitoring policy set but
- Select GWTDOMAIN you want in the “Tuxedo Component” panel
- Select System Servers Enable” check box.

• Monitor XA calls in transaction for a particular group

Same steps as call path monitoring policy set but
- Select the GROUP you want in the “Tuxedo Component” panel
- Select the TransactionEnable” check box
  1. Start to Monitor Tuxedo
  2. Login to TSAM Console, and start to monitor Tuxedo system and application.

    Go to TSAM > Call Path to monitor call path.

    Go to TSAM > Service to monitor service.

    Go to TSAM > System Server to monitor system server.

    Go to TSAM > Transaction to monitor transaction.

    For more information, see the Oracle TSAM Console User Guide.


  Back to Top       Previous  Next