Best Practices for Managing and
Monitoring WebSphere Message
Broker
June 25, 2013
Amir Gabrieli,
Vice President of Solution Engineering,
Correlsense
1. WMB’s role today
2. Challenges to managing WMB
3. Best practices
4. Correlsense approach
5. Summary and Q&A
Agenda
Housekeeping
• Presentation will last 45 minutes
• Submit questions via the chat window
• Slides will be made available tomorrow
Featured Speaker
Amir Gabrieli
VP, Solution Engineering
Correlsense
WMB’S ROLE IN TODAY’S
COMPLEX SOLUTIONS
Market Example: Rede D’Or São Luiz
• Largest private hospital network in Brazil with 27
hospitals and 25,000 employees
• Needed to integrate multiple systems and ensure
easy access to information
• Uses WMB to:
– Automate communication between operational units
– Exchange information between hospitals and with
backend operations
– Handle a high volume of information
Case study from IBM: http://www-
01.ibm.com/software/success/cssdb.nsf/CS/KPES-
97JPWS?OpenDocument&Site=default&cty=en_us
CHALLENGES AROUND
MANAGING WMB-BASED
SOLUTIONS
Managing WMB in Production
is Challenging
• WMB comes with inherent challenges
– Acts as a hub for business critical transactions
– Mediates between services and protocols
• Risks include:
– Losing critical business transactions
– Failing critical business transactions
– General outages
– Poor performance of Flows
and transactions
The Challenges
• Organizational
• Change Management
• Transactions Accountability
• Production Monitoring
Organizational Challenge
• Different owners … one business service
• Often the WMB developer sits in a different
department from the application owner
• Message Flow “code” is not always under the
application owner’s control
Organizational Risks/Challenge
• Message Flow code is prone to logical errors
• May result in unexpected/unsupported
transaction flows
• Message Flows are more complicated than
assumed
• Not enough QA/ testing invested for new
Message Flows
Change Management Challenge
• Making and deploying changes in Message Flows
is easy … too easy
– Dependencies with event sources, event consumers and
other services are not always obvious
– Hard to determine which components will be affected by
a change
Change Management Risks/Challenge
• Small/last-minute changes may cause flow
incompatibilities
• Often the test cycles for Message Flows are not
well defined
Transactions Accountability
• Making sure each transaction is successful and
having the ability to explain why other
transactions fail
• Risks/challenges:
– Typically you won’t be alerted to lost transactions and
Message Flows
– These may result in lost revenue and complications with
business partners
Monitoring Challenge
• Existing monitoring solutions provide limited
coverage
• WMB’s internal monitoring and standard solutions
do not effectively address these challenges
– Most focus on WMB and MQ performance
– Do not directly monitor the run-time execution of flows
– Or the interdependencies in the environment
Monitoring Risks/Challenge
• Long and complex troubleshooting sessions
• Less control over the environment and solution
BEST PRACTICES APPROACH TO
MANAGING AND MONITORING
WMB-BASED APPLICATIONS
1. Write Logs for Easy Back-Tracking
• Production issues are unavoidable
– Provide and use better tracking and logging functionality
• Why?
– Easier to track and
troubleshoot in
production
– Provides a clear
understanding
1. Write Logs for Easy Back-Tracking
AddToInventory
AddToInventory_SOAPInput
InventoryServices
FindInventory_SetFunctionName
Reply_To_Queue
SetMQProperties
SetExpressionToLocalEnvironment
GetInventoryAvailabilityToFindInventoryInput_Transformation
Trace_GetInventoryAvailabilityToFindInventoryInput
SetMQProperties
JMS MQ Transform
SetSOAPReplyIdToJMSCorrelID
JMS Output
Example:
• Log when Message Flow start/end/failed
• Log when Message Nodes start/end/fail
1. Write Logs for Easy Back-Tracking
Example:
• Log which
messages were
received/sent
• Log which
queues are
involved
1. Write Logs for Easy Back-Tracking
Example:
• Capture errors
2. Keep Message Flows Lean
• Experienced WMB users tend to keep their
Message Flows lean
• Why?
– Message Flow syntax can get complicated and hard to
maintain
– Keeping simple Message Flows makes WMB easier to
maintain and reuse
3. Keep Logic in the Apps
• Complex logic associated with Message Flows
should be pushed to the application components
• Avoid developing complex logic within the flow
• Why?
– Keep your Message Flows lean
– Keep your applications decoupled
– Complex validation tests and logic are easier to develop
in programming languages
4. Manage the Inter-Dependencies
• Track and manage interdependency mapping
between WMB, Message Flow, services and
applications
• Why?
– Understand who is impacted by changes
– Understand who is impacted by problems
– Increase control over the solution
4. Manage the Inter-Dependencies
Example:
• Interdependency between applications, Web-Services, and other
services using WMB
5. No Code Changes in Production
• Changes should never be executed directly on the
production environment
• They should be made on a test environment and
then moved to production after approval
• Why?
– Ensure all changes in production are controlled and
verified by QA
6. Manage Transaction Accountability
• Errors and unexpected flow behaviors will result
in lost messages
– For business critical solutions, this could cause lost
revenue or complications with partners
• Each transaction should be tracked and audited
through the entire IT stack and WMB flows
• Why?
– Audit for historical review
– Ensure the application owner can quickly find and handle
lost messages and errors
6. Manage Transaction Accountability
6. Manage Transaction Accountability
7. Have Proper Monitoring Solutions
• You need to monitor:
– WMB
– MQ
– Message Flows
– Business Transactions
• Why?
– WMB-based solutions have many weak spots
– Ensure smooth operation and fast reaction to issues
CORRELSENSE APPROACH
SharePath for WMB
• Correlsense SharePath is an enterprise scale
transaction centric application management and
monitoring solution
• SharePath uses a unique monitoring technology
for comprehensive monitoring of WMB-based
applications
SharePath WMB Agent
• Complete visibility into WMB Message Flow
processing
OS
Core Collector
Execution Group
Process
(DataFlowEngine)
WMB Flows/Nodes
WMB Collector
MQ Client
MQ Collector
EXAMPLES
Real Time Tracing and Monitoring of
Message Flows
Deep Dive for WMB Flows
• Log which SQLs and other API calls were called by nodes
Find (Lost) Transactions and
Message Flows
Transaction Auto-Detection,
Dependency and Topology Mapping
Load and Volume Trending
By Message Flow By Execution Group /
Process
By Node
(Message Flow Step)
Summary
• WMB is a market leader
service bus solution
• Like other service buses it has
inherent monitoring challenges
• Best practices and appropriate
monitoring solutions are critical
Questions?
More information:
info@correlsense.com
www.correlsense.com

Best Practices for Managing and Monitoring WebSphere Message Broker

  • 1.
    Best Practices forManaging and Monitoring WebSphere Message Broker June 25, 2013 Amir Gabrieli, Vice President of Solution Engineering, Correlsense
  • 2.
    1. WMB’s roletoday 2. Challenges to managing WMB 3. Best practices 4. Correlsense approach 5. Summary and Q&A Agenda
  • 3.
    Housekeeping • Presentation willlast 45 minutes • Submit questions via the chat window • Slides will be made available tomorrow
  • 4.
    Featured Speaker Amir Gabrieli VP,Solution Engineering Correlsense
  • 5.
    WMB’S ROLE INTODAY’S COMPLEX SOLUTIONS
  • 6.
    Market Example: RedeD’Or São Luiz • Largest private hospital network in Brazil with 27 hospitals and 25,000 employees • Needed to integrate multiple systems and ensure easy access to information • Uses WMB to: – Automate communication between operational units – Exchange information between hospitals and with backend operations – Handle a high volume of information Case study from IBM: http://www- 01.ibm.com/software/success/cssdb.nsf/CS/KPES- 97JPWS?OpenDocument&Site=default&cty=en_us
  • 7.
  • 8.
    Managing WMB inProduction is Challenging • WMB comes with inherent challenges – Acts as a hub for business critical transactions – Mediates between services and protocols • Risks include: – Losing critical business transactions – Failing critical business transactions – General outages – Poor performance of Flows and transactions
  • 9.
    The Challenges • Organizational •Change Management • Transactions Accountability • Production Monitoring
  • 10.
    Organizational Challenge • Differentowners … one business service • Often the WMB developer sits in a different department from the application owner • Message Flow “code” is not always under the application owner’s control
  • 11.
    Organizational Risks/Challenge • MessageFlow code is prone to logical errors • May result in unexpected/unsupported transaction flows • Message Flows are more complicated than assumed • Not enough QA/ testing invested for new Message Flows
  • 12.
    Change Management Challenge •Making and deploying changes in Message Flows is easy … too easy – Dependencies with event sources, event consumers and other services are not always obvious – Hard to determine which components will be affected by a change
  • 13.
    Change Management Risks/Challenge •Small/last-minute changes may cause flow incompatibilities • Often the test cycles for Message Flows are not well defined
  • 14.
    Transactions Accountability • Makingsure each transaction is successful and having the ability to explain why other transactions fail • Risks/challenges: – Typically you won’t be alerted to lost transactions and Message Flows – These may result in lost revenue and complications with business partners
  • 15.
    Monitoring Challenge • Existingmonitoring solutions provide limited coverage • WMB’s internal monitoring and standard solutions do not effectively address these challenges – Most focus on WMB and MQ performance – Do not directly monitor the run-time execution of flows – Or the interdependencies in the environment
  • 16.
    Monitoring Risks/Challenge • Longand complex troubleshooting sessions • Less control over the environment and solution
  • 17.
    BEST PRACTICES APPROACHTO MANAGING AND MONITORING WMB-BASED APPLICATIONS
  • 18.
    1. Write Logsfor Easy Back-Tracking • Production issues are unavoidable – Provide and use better tracking and logging functionality • Why? – Easier to track and troubleshoot in production – Provides a clear understanding
  • 19.
    1. Write Logsfor Easy Back-Tracking AddToInventory AddToInventory_SOAPInput InventoryServices FindInventory_SetFunctionName Reply_To_Queue SetMQProperties SetExpressionToLocalEnvironment GetInventoryAvailabilityToFindInventoryInput_Transformation Trace_GetInventoryAvailabilityToFindInventoryInput SetMQProperties JMS MQ Transform SetSOAPReplyIdToJMSCorrelID JMS Output Example: • Log when Message Flow start/end/failed • Log when Message Nodes start/end/fail
  • 20.
    1. Write Logsfor Easy Back-Tracking Example: • Log which messages were received/sent • Log which queues are involved
  • 21.
    1. Write Logsfor Easy Back-Tracking Example: • Capture errors
  • 22.
    2. Keep MessageFlows Lean • Experienced WMB users tend to keep their Message Flows lean • Why? – Message Flow syntax can get complicated and hard to maintain – Keeping simple Message Flows makes WMB easier to maintain and reuse
  • 23.
    3. Keep Logicin the Apps • Complex logic associated with Message Flows should be pushed to the application components • Avoid developing complex logic within the flow • Why? – Keep your Message Flows lean – Keep your applications decoupled – Complex validation tests and logic are easier to develop in programming languages
  • 24.
    4. Manage theInter-Dependencies • Track and manage interdependency mapping between WMB, Message Flow, services and applications • Why? – Understand who is impacted by changes – Understand who is impacted by problems – Increase control over the solution
  • 25.
    4. Manage theInter-Dependencies Example: • Interdependency between applications, Web-Services, and other services using WMB
  • 26.
    5. No CodeChanges in Production • Changes should never be executed directly on the production environment • They should be made on a test environment and then moved to production after approval • Why? – Ensure all changes in production are controlled and verified by QA
  • 27.
    6. Manage TransactionAccountability • Errors and unexpected flow behaviors will result in lost messages – For business critical solutions, this could cause lost revenue or complications with partners • Each transaction should be tracked and audited through the entire IT stack and WMB flows • Why? – Audit for historical review – Ensure the application owner can quickly find and handle lost messages and errors
  • 28.
    6. Manage TransactionAccountability
  • 29.
    6. Manage TransactionAccountability
  • 30.
    7. Have ProperMonitoring Solutions • You need to monitor: – WMB – MQ – Message Flows – Business Transactions • Why? – WMB-based solutions have many weak spots – Ensure smooth operation and fast reaction to issues
  • 31.
  • 32.
    SharePath for WMB •Correlsense SharePath is an enterprise scale transaction centric application management and monitoring solution • SharePath uses a unique monitoring technology for comprehensive monitoring of WMB-based applications
  • 33.
    SharePath WMB Agent •Complete visibility into WMB Message Flow processing OS Core Collector Execution Group Process (DataFlowEngine) WMB Flows/Nodes WMB Collector MQ Client MQ Collector
  • 34.
  • 35.
    Real Time Tracingand Monitoring of Message Flows
  • 36.
    Deep Dive forWMB Flows • Log which SQLs and other API calls were called by nodes
  • 37.
    Find (Lost) Transactionsand Message Flows
  • 38.
  • 39.
    Load and VolumeTrending By Message Flow By Execution Group / Process By Node (Message Flow Step)
  • 40.
    Summary • WMB isa market leader service bus solution • Like other service buses it has inherent monitoring challenges • Best practices and appropriate monitoring solutions are critical
  • 41.