Transactions Tab


About Web Service Transactions

One of the goals of service-oriented architectures is to design application infrastructure that more closely matches business processes. These business processes often involve exchanges with multiple systems. For example, placing an order for a product can involve exchanges with an inventory system as well as an accounting system. When service consumers and producers are communicating with each other in a coordinated fashion to accomplish a business process, it is called a transaction.

Transactions are central to many businesses that have implemented service-oriented architectures for their information systems. Monitoring the performance and metering the usage of transactions based on Web service technology can be a challenge. This can be further complicated by the evolving technologies and standards used by vendors to implement transactions in the service-oriented infrastructure. JaxView provides operations management the capability of monitoring SOAP transactions.

A transaction instance is an instance of the sequence of messages required to complete the steps of a business process. The loosely-coupled nature of Web services presents a challenge to controlling and coordinating the steps of transactions. The details of how message coordination is implemented can vary. The transaction monitor supports WS-Transaction and WS-Coordination protocols. In general, the messages are associated with each other by way of context data that is included as part of the message payload. JaxView uses this context to identify transaction instances for monitoring and reporting purposes. There may also be transaction-specific notification content within the messages. This notification content is often used to communicate success or failure states for transaction steps. JaxView can be configured to monitor message for select notification content and use this in the event threshold logic for the monitor.

There are two types of transaction monitors in JaxView:

Type

Description

Generic SOAP Transaction Monitor

Monitors messages received by JaxView for a sequence of steps related by a specified message context pattern.

Multi-step Transaction HeartBeat

Actively sends a sequence of synthetic requests to a group of services or operations to test for system availability and performance.

It is important to note that Generic SOAP Transaction monitoring is passive. JaxView does not synthesize the requests for the steps of the transacation to the service endpoints. For this monitor type, JaxView is simply listening to messages being exchanged in the service infrastructure and looking for sequences of monitored messages that are related by the sequence in which they are executed and the context data they share. The Multi-step Transaction HeartBeat monitor type does generate message traffic to the applicable services.

Working with the Transactions Tab

Transaction monitoring is unique in JaxView in that transaction monitor object are not displayed in the Services tab. You use the Transactions tab to work with transaction monitoring in JaxView. The Transactions tab is divided in to two main sections. On the left side is the Transactions object tree that you use to add, edit and navigate to Transaction definitions. On the right is a display panel you use to edit Transaction definitions or view transaction results as recorded by JaxView. The following sections describe how you work with transactions in JaxView.

Transactions object tree

The Transactions object tree is a hierarchy of transaction definition objects defined in JaxView.

The contents of the right side display panel of the Transactions page is determined by the context selected in the left Transactions object tree. Each object node in the left Transactions object tree includes an action menu that you access by selecting the node and then use the right mouse click to display the node action menu. The following table describes the nodes in the tree and their associated actions:

Object Node

Action Menu Item

Description

Transactions Root node

Add New Transaction

Add a new Transaction definition to the Transactions object tree

 

Add New Group

Adds a new group to the transaction tree

Transaction definition node

Add Rule

Add a new rule definition to the Rules object tree

Assign Rule

Assign a rule definition to the selected Transaction definition

Edit Transaction

Edit the selected Transaction definition

Delete

Delete the selected Transaction definition from the Transactions object tree

Enable

Enable the selected Transaction definition (if it has been previously disabled)

Disable

Disable the selected Transaction definition.

  Move To Group Move this transaction to a new group. If left blank it will be moved under root
Group Definitaion node Edit Edit this group
  Add Subgroup Adds a new sub group under this group
  Move To Group Moves this group under a new group as sub group
  Delete Deletes this group and moves the transactions in this group under root node



View Transaction tables

Clicking on a node in the Transactions object tree displays the View Transaction table for the node content in the right panel. This table is the history of the transaction as monitored by JaxView . The following figure is an example of an View Transaction table displayed in the right side panel when either the Transaction Root node or a specific transaction definition node is selected.




The View Transaction tables include seven columns of data. The following describes the table contents.

Transaction Name
The name of the Transaction definition as it appears in the Transactions object tree. This name is the Title entered in the Transaction definition page when the alert is created.
Status
Indicates whether the transaction was successfully executed.
Start Time
The time and date that the transaction started.
Last Message Received
Displays a summary text of the last message received.
Result
Displays the most recent result of the transaction.
Transaction State
Indicates the state of the transaction.
Transaction Client
Displays the client for whom the transaction was executed, if any was supplied.


See the section SOAP Transaction Monitor for the steps you use to create a passive SOAP transaction monitor. See the section Multi-step Transaction HeartBeat for the steps you use to create an active SOAP transaction monitor.