You are on page 1of 32

IBM Tivoli Software

IBM Tivoli Service Request Manager and IBM


Netcool Omnibus Integration.
Configuration and Troubleshooting
By: Stuart Bowden & Tracey McWilliams
Support Technical Exchange Web site
http://www-306.ibm.com/software/sysmgmt/products/support/supp_tech_exch.html

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Introduction
Abstract:


This Tivoli Support Technical Exchange web seminar


will provide details of our experience in supporting the
configuration of TSRM and the Omnibus Gateway for
TSRM in order to Create and Update Incidents /
Service Requests in TSRM V 7.x

Objectives
1. Experiences of Configuring the Omnibus Gateway for
TSRM
2. TSRM / Maximo Integration Framework concepts and
configuration
3. Use, troubleshooting and tuning tips.
2

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Agenda:
 Overview
 Omnibus Gateway for TSRM configuration
 Maximo Integration Framework concepts
 Maximo Integration Framework configuration
 Performance Tuning Tips
 Common problems
 Future Enhancements
 Questions

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Overview
 Facilitates 2-way communication from Omnibus to
TSRM/Maximo
 Creating, Updating Tickets from Omnibus into
TSRM
 Updates Omnibus with changes made to these
Tickets in TSRM

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Overview

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Gateway Configuration
 Listed below are the TSRM specific Properties from the GAT_TSRM.Props
file:
Gate.TSRM.TicketObjectName
Gate.TSRM.TicketObjectType
Gate.TSRM.WorkLogObjectName
Gate.TSRM.URLList

: 'MXINCIDENT
: 'INCIDENT
: 'WORKLOG
: http://tsrm_server/meaweb/os/MXINCIDENT

Gate.TSRM.ThreadPoolSz

: 15

Gate.TSRM.NonApplicationErrorTitles

: '.*500 Internal Server Error.*'

Gate.TSRM.NonApplicationErrorTitles
user.*'

: '(?s).*Record has been updated by another

Gate.TSRM.ErrorCodeFieldName

: 'TSRMErrorCode'

Gate.TAL.NBScriptFileName

: '$OMNIHOME/gates/tsrm/NBScriptFile'

Gate.Java.Arguments
: '-Xmx2048m' (example for debugging: 'Xmx2048m -Xrunhprof:heap=sites,file=/log/hprof.log')

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Gateway Package Dependency


 Ensure that all the latest GA fix packs are applied
 Netcool/OMNIbus Version 7.2 + Fix Pack 5
 Netcool/OMNIbus Version 7.2.1 + Fix Pack 3
 Netcool/OMNIbus Version 7.3 and 7.3.1 base install
 Netcool/OMNIbus Gateway Ticketing Abstraction Layer
gateway-libtal
 This patch contains the java infrastructure for java gateways
gateway-libngjava

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Gateway Installation and Configuration


 Please refer to the Installation guide for Installing
and configuring the Gateway. This can be found
here:
 http://publib.boulder.ibm.com/infocenter/tivihelp/v
8r1/topic/com.ibm.netcool_OMNIbus.doc/tsrmgwpdf.pdf

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Maximo Integration Framework Concepts used by the


Gateway
 Object Structures
 Synchronous Integration
 Operations
 Call and Response Schemas

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Object Structures
 Common Data Layer for all Inbound and Outbound
processing
 Consists of One or more Business objects
 Contains a Java definition class for outbound or
inbound processing outside of the standard
operations / actions.

10

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Object Structures

INCIDENT
WORKLOG

11

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Object Structures

12

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Synchronous Integration
 Maximo/TSRM supports both Synchronous and
Asynchronous Transactions
 Synchronous Transactions are done via Web
Services or directly to the Object Structure HTTP
Servelet
 Asynchronous Transactions use a variety of
methods to place messages on a JMS Queue
 Once a Synchronous Transaction is processed a
Response is sent to the External System

13

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Operations
 Incoming Transactions can have any of the
following operations:
Create
Delete
Invoke
Query
Sync
Update

14

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Operations
 The following Operations are used by the Gateway
Create: This will create a record and will fail if a
matching record already exists
Update: This will updated a pre-existing record and fail
if there is no matching record
Query: Will return a response based on a SQL where
clause in the incoming message

15

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Call and Response Schemas


 Each Operation has an associated Message and Response
schema
 Defines what attributes can be included in the Incoming
message and what will be sent as a response
 The Response to a Create message will send the TICKETID
back to the Gateway
 The Response to an Update message will tell the Gateway it
has been successful no further data is sent
 The Response to a Query message will send all attributes
included in the response schema back to the Gateway for
each matching ticket

16

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Call and Response Schemas cont.

17

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Integration Framework Configuration


 Please refer to the Gateway installation guide for
the TSRM configuration needed.
 Furthermore please see this link for the Maximo
Integration Framework Guide
 http://publib.boulder.ibm.com/infocenter/tivihelp/v
3r1/topic/com.ibm.mam.doc_7.1/pdf/mam71_integr
ation_guide.pdf

18

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Updates From TSRM to the Gateway


 Currently the Gateway is responsible for
managing the updates from TSRM
 To get updates from TSRM i.e. When the status
of a Ticket has changed. The Gateway sends a
Query Message to TSRM asking for the details of
all Tickets currently in the GW cache.
 The GW then processes the Response from TSRM

19

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Gateway Triggers
 In order to pick up the TTState changes a FILTER WITH:
LogTicket=1 and TTState=1' will need to be set.
This is different to the default one of LogTicket=1.
This is not the Default setting as TTState was originally meant for the
Resync Functionality, it now has additional use preventing unneccessary
updates being sent to TSRM.
By default we set the TTState to 1 when any operation occurs on the alert.
AFTER IDUC we set TTState=0 - this means we have seen the update.
So if in the next IDUC no one changes the Alert we will not process it given
the above filter

20

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Tailoring the Triggers in order to stop sending unrequired


changes to TSRM
 create or replace trigger tt_state_change_status_reins_tbl
group tal_gateway_grp
priority 1
comment 'Trouble Ticket State change processing for ALERTS.STATUS'
before reinsert on alerts.status
for each row
begin
if ( %user.is_gateway = false)
then
set old.TTState = 1;
elseif (%user.description <> 'failover_gate' and %user.description <>
'ticket_gate')
then
set old.TTState = 1;
end if;
end;
go

21

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Tailoring the Triggers cont.


 create or replace trigger tt_state_change_status_reins_tbl
group tal_gateway_grp
priority 1
comment 'Trouble Ticket State change processing for ALERTS.STATUS'
before reinsert on alerts.status
for each row
begin
if ((old.Severity != new.Severity or new.TTNumber='') and new.LogTicket=1)
then
if ( %user.is_gateway = false)
then
set old.TTState = 1;
elseif (%user.description <> 'failover_gate' and %user.description <> 'ticket_gate')
then
set old.TTState = 1;
end if;
end if;
end;
go

22

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Limitations
 This solution does not cover a situation where the following
severity changes have occurred 3->4->3 in a single iduc cycle.
In this case the gateway will assume the alert has changed and
send it over to TSRM.
Therefore the intermediate updates are of no interest. In that case
we can check if the ticket number is not populated in order to
create the ticket and check that the severity is 0 in order to send
the clear update. This could reduce the load on TSRM. So in this
case we would have the following if clause in the trigger:
if ((new.Severity=0 or new.TTNumber='') and new.LogTicket=1)

23

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Integration Framework Performance Tuning


 It is strongly recommended that a dedicated Application
Server / JVM / Cluster is used for all Incoming Integration
Framework transactions
 Out of the Box the Object Structure used by the Gateway has
approximately 115 attributes. This could be significantly
higher if other add-on products are installed
 When a Query is sent to TSRM to check the status of Active
Tickets created by the Gateway. A message with All
Attributes for All Active Tickets will be returned
 The Gateway will need to Parse a lot of information it does
not need

24

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Integration Framework Performance Tuning


 These are the TSRM Attributes the Gateway needs to operate

INCIDENT.CLASS
INCIDENT.CHANGEDATE
INCIDENT.DESCRIPTION
INCIDENT.REPORTEDBY
INCIDENT.REPORTEDPRIORITY
INCIDENT.EXTERNALRECID
INCIDENT.EXTERNALSYSTEM_TICKETID
INCIDENT.STATUS
WORKLOG.CLASS*
WORKLOG.CREATEDATE*
WORKLOG.DESCRIPTION*
WORKLOG.DESCRIPTION_LONGDESCRIPTION*

* Note: This are only needed if you are implementing Journaling.

25

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Integration Framework Performance Tuning


 We recommend that a new Object Structure is created which
would include only the Attributes the Gateway needs
 Create Object Structure OMNIIncident
Add the Incident and Work Log Objects
In the Select Actions menu, Include Exclude Fields option use
this dialog to Exclude All Attributes except those mentioned in
the last slide.
Now do Select Actions, Generate Schema to create the new
schemas.
Configure the GW Props file with the new URL for the HTTP
Servelet

26

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Gateway Performance Tuning


 https://www304.ibm.com/support/docview.wss?uid=swg21460
308
 This contains information on:
Database Tuning
Gateway JVM Tuning
Tuning the Triggers/Filters to control Event Forwarding
Among others!

27

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Troubleshooting
 Logging in TSRM
 In the Logging Application set the following two
loggers
log4j.logger.maximo.sql to INFO
log4j.logger.maximo.integration to DEBUG
If possible set these to log to a separate File Appender

28

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Common Problems
 Multiple Tickets created in TSRM for a single Alert
in the Gateway.
 This would suggest that the Gateway has not
received or processed the Response from TSRM
when the Create Message was received. Potential
causes if SSL is used in TSRM but has not been
configured on the Gateway then the response
could not be interpreted.

29

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Future Enhancements - Disclaimer


 Information regarding potential future products is
intended to outline our general product direction and it
should not be relied on in making a purchasing
decision. The information mentioned regarding
potential future products is not a commitment,
promise, or legal obligation to deliver any material,
code or functionality. Information about potential future
products may not be incorporated into any contract.
The development, release, and timing of any future
features or functionality described for our products
remains at our sole discretion.

30

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Future Enhancements
 TSRM is able to send outbound messages when an Event
occurs on a given record.
 The Gateway will in a future release be able to receive
updates from TSRM when a change to a Ticket it owns has
been done by a user.
 Publish Channels in TSRM are used to configure and control
these outbound messages.
 Rules can be configured to only send data to the Gateway
regarding Tickets created By the Gateway.
 Also only certain updates on this Tickets could be sent i.e.
only send a message to the GW when the Status of the
Ticket changes.

31

7/19/2011

2006 IBM Corporation

Business Unit or Product Name

Thanks and . . . . .

Any Questions?

32

7/19/2011

2006 IBM Corporation

You might also like