ws bus monitor best practices

Upload: hb151214

Post on 08-Apr-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/6/2019 Ws Bus Monitor Best Practices

    1/54

    Best Practices forWebSphere BusinessMonitor v7

  • 8/6/2019 Ws Bus Monitor Best Practices

    2/54

    Agenda

    Monitor Concepts & Architecture

    1

    Monitor Model Authoring Tips andPitfalls

    High Availability and the BPMGolden Topology

    Monitor Runtime Configurationand Tuning

  • 8/6/2019 Ws Bus Monitor Best Practices

    3/54

    Business Activity Monitoring (BAM) provides process visibility

    Business leaders gain real-time visibility and actionable insight into processes

    Real-timeinformation

    consolidated intocustomizable, role-based

    dashboards

    Business leaders

    monitor process KPIs andreceive alerts

    2

  • 8/6/2019 Ws Bus Monitor Best Practices

    4/54

    3

  • 8/6/2019 Ws Bus Monitor Best Practices

    5/54

    Individualbusiness

    situations

    Aggregated KPIsacross multiple

    processes

    Trend analysis

    Analyze a range of process data with BAMTake action faster with up-to-minute information on personalized dashboards

    Drill down to investigate

    why John Smiths newbank account requesthas not been processedwithin the specifiedservice level agreement

    Redirect Group As

    backlogged newaccount openingqueue to Group B torebalance workload

    Compare new

    account openingmetrics across timeperiods to manageresources moreeffectively

    4

  • 8/6/2019 Ws Bus Monitor Best Practices

    6/54

    For example:

    Percentage of sales order lineitems delivered on time

    Average time to approve loanapplication

    Total amount of loandisbursements this month

    Key Performance Indicators (KPIs)are metrics used to quantify and

    measure business performance against strategic and operational targets.

    Real-time KPIs help you make smarter decisionsKeep track of metrics and targets in the areas most critical to your business

    Integrated KPI libraries help users pick the

    best metrics to monitor their processes 5

  • 8/6/2019 Ws Bus Monitor Best Practices

    7/54

    Predictive KPIs enable proactive managementTake advantage of market opportunities and prevent problems before they occur

    Predict future values ofKPIs based on historic andcyclic trends

    Pro-actively trigger alerts

    when predicted valuesindicate a problem

    Feed and correlate alertswith business event

    processing for enhancedpattern detection

    Predictive KPIs in WebSphere Business Monitor 6

  • 8/6/2019 Ws Bus Monitor Best Practices

    8/54

    WebSphere MQWorkflow

    WebSphere

    Message Broker WebSphereBusiness Events

    WebSphere ESB &Process Server

    WebSphere

    Business ServicesFabric

    Third Party

    Applications

    IBM FileNet P8

    WebSphere

    Partner Gateway

    WebSphere BusinessMonitor

    Adapters:SAP, PeopleSoft, etc.

    CICS

    IMS

    WebSphereSensor Events

    Events

    Event Sources for WebSphere Business MonitorConsume events from broad range of middleware for end-to-end process monitoring

    7

  • 8/6/2019 Ws Bus Monitor Best Practices

    9/54

    How to Publish Events to Monitor

    Options to emit XML for BAM via a variety of approaches

    REST Event Emitter API

    WebSphere MQ

    * Use IBM product already enabled for event emission

    * Java Message Service APIs (SIB)

    WS-Notification

    WebSphere Application Server

    Common Event Infrastructure

    WebSphere Business Monitor

    Note: All options take XSD-described XML no CBEs needed8

  • 8/6/2019 Ws Bus Monitor Best Practices

    10/54

    Example: Using the JMS API to send a BAM eventpublic void sendJMSMessage(String xmlToSend, String jmsQueue, String jmsQueueConnectionFactory)

    {

    // get the Connection Factory

    Context context = new InitialContext();

    ConnectionFactory qConnectionFactory = (ConnectionFactory) context

    .lookup(jmsQueueConnectionFactory);

    Connection connection = qConnectionFactory.createConnection();

    // get the queue

    Queue queue = (Queue) context.lookup(jmsQueue);

    //Create session, producer, and message.

    // get a session

    Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);

    // get the producer

    MessageProducer producer = session.createProducer(queue);

    // build the TextMessage

    TextMessage message = session.createTextMessage(xmlToSend);

    // send the message

    producer.send(message);

    } 9

  • 8/6/2019 Ws Bus Monitor Best Practices

    11/54

    Action

    Services

    EventDistribution

    MonitorDatabase

    Monitor usingBusiness Space

    Event/datasource

    Send eventsthrough JMS,REST, WS-Notification, etc.

    Eventprocessing

    Businesssituation events

    Take action (email, pager, alert,process/service invocation)

    Business

    Monitor Toolkit(Modeler, RADor WID)

    Author & DeployMonitoringModel

    Monitor Server(installed on WebSphere Application Server 7.0 or WebSphere Process Server 7.0)

    RESTServices

    Call service toretrieve data(optional) Call Monitor

    services toretrieve data

    Monitor ModelApplication

    Personalizespaces, DefineAlerts & KPIs

    Monitor Architectural Overview

    1

    2

    6

    3 4

    7

    5

    8

    10

  • 8/6/2019 Ws Bus Monitor Best Practices

    12/54

    Agenda

    Monitor Concepts & Architecture

    11

    Monitor Model Authoring Tips andPitfalls

    High Availability and the BPMGolden Topology

    Monitor Runtime Configurationand Tuning

  • 8/6/2019 Ws Bus Monitor Best Practices

    13/54

    Model Authoring Tips and Pitfalls

    ***Business*** Monitoring

    Model granularity

    Model constructs to use with care

    Child MCsRecurring wait-time triggers

    Deliver to All

    Support multi-threaded event processing

    12

  • 8/6/2019 Ws Bus Monitor Best Practices

    14/54

    Business-relevant Events

    Only turn on event emission

    where truly necessary for

    business activity monitoring WebSphere Business Monitor should not

    be used for IT monitoring

    Enabling emission for all possible event

    types might cause 100 events to beemitted per process instance, but yourmonitor model may only have KPIs, etc.that care about 10 of those

    Best practice is to just turn on eventsused in selected templates and variables

    Turning off unneeded events improvesperformance of both the emitting app

    and the monitor model 13

  • 8/6/2019 Ws Bus Monitor Best Practices

    15/54

  • 8/6/2019 Ws Bus Monitor Best Practices

    16/54

    Generate high and low level monitor modelsIBM developerWorks Download for Modeler

    15

  • 8/6/2019 Ws Bus Monitor Best Practices

    17/54

    Child Monitoring Contexts

    When generating an MM from BPEL, consider using

    Event Groups rather than Child MCs for activities

    - Reduces number of cubes, simplifies dashboard usage

    16

  • 8/6/2019 Ws Bus Monitor Best Practices

    18/54

    Recurring wait time triggers

    Triggers that should beevaluated periodically

    Be careful with manyactive instances and a

    short wait time

    With 100 new instances

    per minute, averaging aweek to complete, a 15minute period wouldresult in over 1000evaluations/second

    Consider dashboarddefined KPI alerts over

    modeled KPI alerts 17

  • 8/6/2019 Ws Bus Monitor Best Practices

    19/54

    Deliver to All

    Event delivery option for multiple correlation matches

    Be careful when you have many active instances and

    the event could correlate to a high percentage of them With 1 million active instances, an event that correlates to

    1/3 of them, arriving once every 5 minutes, would result inover 1000 event deliveries/second

    18

  • 8/6/2019 Ws Bus Monitor Best Practices

    20/54

    Multi-threaded event processing

    Events are processed more efficiently in multi-threaded mode

    Requirements to support multi-threading:

    All inbound events must contain the key to the root MC

    All correlation expressions (including for events for child/grandchildMCs) must reference that key to the root MC

    Only multi-threaded models can utilize the error queue An event causing an exception, along with all future events that

    correlate to the same instance, will be routed to the error queue

    Otherwise the entire model halts processing all events if any single

    event fails to be processed successfully

    Only multi-threaded models can support event reordering

    Such as would be desirable if using asynchronous event emission

    19

  • 8/6/2019 Ws Bus Monitor Best Practices

    21/54

    Agenda

    Monitor Concepts & Architecture

    20

    Monitor Model Authoring Tips andPitfalls

    High Availability and the BPMGolden Topology

    Monitor Runtime Configurationand Tuning

  • 8/6/2019 Ws Bus Monitor Best Practices

    22/54

    Monitor Runtime Components

    CEI Event Service

    Queue Bypass

    Service Integration Bus Dimensional Analysis & Reporting

    Business Space

    Business Monitor API REST Service

    Business Monitor Action Services

    Business Monitor Data Movement Services

    Business Monitor Data Services Scheduler

    21

  • 8/6/2019 Ws Bus Monitor Best Practices

    23/54

    CEI Event Service

    Business Monitor uses the CEI Event Service to emit outbound events.

    Which CEI Event Service is used is specified by defining an EmitterFactory for use by Business Monitor.

    Business Monitor emits outbound events synchronously by default to

    ensure that event order is preserved.

    22

  • 8/6/2019 Ws Bus Monitor Best Practices

    24/54

    CEI Event Service

    Event Emitters being monitored by Business Monitor dont haveto use the same CEI Event Service.

    When configuring the CEI Event Service for Business Monitordecide if you are going to:

    Create an Event Service just for Business Monitors outbound events. Create an Event Service for both Business Monitors outbound events

    and other event emitters. Configure Business Monitor to use an existing Event Service to emit

    outbound events.23

  • 8/6/2019 Ws Bus Monitor Best Practices

    25/54

    Queue Bypass

    Simpler to configure

    No cross-cell bus links

    Enhanced reliability

    Improved performance

    Single-phase commit

    Monitor 6.2 introduced a

    new configuration option

    that enables CEI to directlyinsert events into the MM

    database tables24

  • 8/6/2019 Ws Bus Monitor Best Practices

    26/54

    Service Integration Bus

    For queue based event delivery: Business Monitor processes events delivered to various JMS Queues. The JMS Queues are provided by Queue Destinations on the Service

    Integration Bus. In order to automatically configure JMS and SI Bus resources, a specific

    SI bus is expected to exist:

    MONITOR.cellname.Bus For queue bypass event delivery:

    Business Monitor processes events directly from MONITOR database. Monitor bus not used for monitor model event delivery, but input queue for

    Action Services still exists. Note queues on CEI bus still used if asynch event emission is chosen

    25

  • 8/6/2019 Ws Bus Monitor Best Practices

    27/54

    Service Integration Bus

    A Message Engine is the runtime of a Service Integration Bus. By default, when a message engine is deployed to a cluster, only

    one member is active at a time.

    It is possible to change this behavior to, for example, have allmessage engine members active at once, but this is not supportedby Business Monitor.

    Using anything other than the 1-of-N policy for the message enginewill cause events to be delivered to Business Monitor out of order.

    26

  • 8/6/2019 Ws Bus Monitor Best Practices

    28/54

    Dimensional Analysis & Reporting

    Embeds analytics support into Business Monitor Multidimensional analysis enabled in Dashboard

    Dimension and Report views.

    Now installed / configured as part of the product

    Upgrade to Cognos BI for advanced analytics of

    data collected by Business Monitor27

  • 8/6/2019 Ws Bus Monitor Best Practices

    29/54

    Business Space

    Business Space widgets provide visualization of theBusiness Monitor data.

    Uses AJAX for a rich user experience in a web browser.

    Uses the Business Monitor REST API to retrieve datafrom the Business Monitor server. No need for Portal Server. Packaged as a web application.

    28

  • 8/6/2019 Ws Bus Monitor Best Practices

    30/54

    Business Space with a Proxy

    Business Space widgets for Monitor are client-side mashups. In a client side mash-up the web browsers Same-Origin Policy

    prevents loading data from multiple web servers. Proxy allows you to install REST Service, Alphablox, Business

    Space Manager, and the Business Space Widgets in separateservers. When these components are installed into clusters, you need an

    HTTP server to distribute traffic among all the cluster members;this same HTTP server can act as a proxy.

    29

  • 8/6/2019 Ws Bus Monitor Best Practices

    31/54

    Business Monitor API REST Service

    Provides access to the data that Business Monitor has collected

    Packaged as a Web Application that conforms to RepresentationalState Transfer (REST) architectural style

    JSON formatted responses enable easy integration of BusinessMonitor data when developing Web 2.0 Applications

    Use of the API REST Service is not limited to Web applications For example, Business Monitor provides a Microsoft Excel plugin that

    uses the REST APIs to import business monitoring metrics 30

  • 8/6/2019 Ws Bus Monitor Best Practices

    32/54

    Business Monitor Action Services

    Listens for Business Situation Events emitted by a model. Performs actions in response to Business Situation Events,

    for example: Send an email

    Have an alert displayed in a users Business Space Send a page or SMS message Invoke a Web Service or SCA component

    Also required for dashboard-defined alerts Packaged as an EAR

    31

  • 8/6/2019 Ws Bus Monitor Best Practices

    33/54

    Data Movement Service

    Optimizes server processing and reporting in higher volumeproduction environments.

    Moves data from operational tables to reporting tables whilepruning completed instances from the operational tables.

    Operational tables are optimized for inserts and updates, andthe reporting tables are optimized for dashboard queries.

    Optional recommended for use in high-volume environments

    32

  • 8/6/2019 Ws Bus Monitor Best Practices

    34/54

    Data Services Scheduler

    Performs data services at scheduled intervals:

    Data movement service

    Cube summary table refresh

    Cube refresh

    KPI history

    KPI predictions Dynamic alert evaluation

    Data archiving and pruning

    Packaged as an EAR33

  • 8/6/2019 Ws Bus Monitor Best Practices

    35/54

    Monitor Runtime Configuration

    Tuning parameters

    Release-to-release performance results

    Error Handling

    Error Queue

    34

  • 8/6/2019 Ws Bus Monitor Best Practices

    36/54

    Tuning Parameters

    Use multi-threaded mode

    Tune batch and cache sizes

    Defaults are pretty good

    Stand-off delays allow grouping

    related events togetherAffects dashboard latency

    Enable reordering if asynch

    event emission was used

    Time-based trigger tuning35

  • 8/6/2019 Ws Bus Monitor Best Practices

    37/54

    Additional Tuning Suggestions

    Monitor 7.0 Performance Report

    CEI: Disable the CEI event data store and the All Events queue,use queue bypass

    Database: Increase buffer pools, use RAID disks, use RUNSTATSto help the optimizer

    Event processing measurements: 1711 events/second for 1 model,5208 events/second for 8 models

    Work Load Estimator sizing tool (available from Techline)

    BPM 7.0 Performance Tuning redpaper

    http://www.redbooks.ibm.com/redpieces/abstracts/redp4664.html

    BPM 7.0 Production Topologies redbook

    http://www.redbooks.ibm.com/redpieces/abstracts/sg247854.html

    36

  • 8/6/2019 Ws Bus Monitor Best Practices

    38/54

    Release-to-Release Performance

    0

    250

    500

    750

    1000

    1250

    1500

    1750

    2000

    Monitor 6.0.2 Monitor 6.1 Monitor 6.2 Monitor 7.0*

    Events per Second

    Results obtained by a monitor model installed to a single machine37

  • 8/6/2019 Ws Bus Monitor Best Practices

    39/54

    Error Handling

    Hard vs. soft exceptions

    Choose which exceptions

    should cause that instance tostop processing events

    Correlation exceptions

    Parent exceptions

    Value out of range behavior

    Retry settings

    38

  • 8/6/2019 Ws Bus Monitor Best Practices

    40/54

    Error Queue

    Use the admin console (or wsadmin/Jython)to view and administer the error queue

    Hard exceptions sent here (multi-threadedmode only)

    All future events that correlate to the sameinstance also

    Check here if dashboards not showingexpected results

    39

    Just Announced

  • 8/6/2019 Ws Bus Monitor Best Practices

    41/54

    40

    Increasing Visibility with Advanced MonitoringWebSphere Business Monitor V7 for z/OS

    Now you can run the entire Monitorinfrastructure on z/OS

    This adds to previous z/OS related Monitorcapability

    Monitoring events from infrastructure running onz/OS (CICS, IMS, MQ, WebSphere MessageBroker, WebSphere Process Server, etc)

    RACF for user registry/security repositoryMonitor data in DB2 for z/OS (performanceimprovement in 7.0)

    Ability to federate Monitor running on zLinuxinto a z/OS cell

    Monitor V7 for z/OS: You can now runmonitor models on z/OS. Now you canhave your entire BPM suite running in asingle, homogeneous z/OS cell.

  • 8/6/2019 Ws Bus Monitor Best Practices

    42/54

    Agenda

    Monitor Concepts & Architecture

    41

    Monitor Model Authoring Tips andPitfalls

    High Availability and the BPMGolden Topology

    Monitor Runtime Configurationand Tuning

  • 8/6/2019 Ws Bus Monitor Best Practices

    43/54

    High Availability

    Use clustering to avoid a Single Point of Failure,and for workload management*

    Vertical and Horizontal clustering optionsCan also mix, or have a cluster of one

    Consider using an HA database DB2 HA/DR

    Oracle RAC

    Your apps arent HA unless their monitoring is HA!Eventually event emission will fail if MM is down too long

    Consider using WebSphere MQ to support deep queues42

  • 8/6/2019 Ws Bus Monitor Best Practices

    44/54

    High Availability, continued

    Cluster the emitting application (if J2EE-based)

    Use synchronous delivery if sequence info not in events

    Cluster the CEI event server application

    CEI can become the bottleneck otherwise

    Cluster the monitor model applications

    HA Manager enforces singleton policy

    Use core-group policies to pin each MM to its own

    desired cluster member, to spread work around

    Offers fail-over in the event of an outage; avoids aSingle Point of Failure; supports fail-back

    43

    Business Monitor as part of BPM Deployment

  • 8/6/2019 Ws Bus Monitor Best Practices

    45/54

    Business Monitor as part of BPM DeploymentEnvironments

    v6.2 Background WPS has provided Deployment Environment

    concept since 6.1.x. DeploymentEnvironments encapsulate a cells entire

    topology configuration, making it easy tocreate topologies from best practice patterns

    Sample 4-cluster topology with 2 nodes for failover and scalability

    v7 Improvement WPS has made Deployment Environment

    framework a common componentavailable to all BPM stack products.

    Monitor exploits Deployment Environmentframework and offers two out of the boxtopology patterns:

    Create a 1-cluster topology for POCs andsmall production environments that needsimple failover

    Create a 4-cluster topology for increasedproduction isolation and scalability

    44

    Business Monitor as part of BPM Deployment

  • 8/6/2019 Ws Bus Monitor Best Practices

    46/54

    Business Monitor as part of BPM DeploymentEnvironments

    This option creates a 4 clusterBPM Golden Topology

    Administrator enters configuration parameters in a six-step wizard. TheDeployment Environment wizard then automatically updates 500+configuration files that comprise the topology configuration. 45

  • 8/6/2019 Ws Bus Monitor Best Practices

    47/54

    The whole story!

    46

  • 8/6/2019 Ws Bus Monitor Best Practices

    48/54

    Summary

    Model with performance in mind

    Follow tuning recommendations

    Choose queue-bypass

    Plan for highly availability

    Use the BPM Golden Topology

    47

  • 8/6/2019 Ws Bus Monitor Best Practices

    49/54

    48

    We Value Your Feedback !

    Please complete the session survey for this session by:

    Accessing the SmartSite on your smart phone or computer

    at: http://imp2010.confnav.com Surveys / My Session Evaluations

    Visiting any onsite event kiosk

    Surveys / My Session Evaluations

    Each completed survey increases your chance to win anApple iPod Touch with daily drawing sponsored byAlliance Tech

    Get started on the path to agility performance and

  • 8/6/2019 Ws Bus Monitor Best Practices

    50/54

    49

    Get started on the path to agility, performance, andgrowth TODAY !

    Learn about Getting Started with IBMBPM for Rapid ROI

    Read case studies to see real examplesof business value derived by BPMenabled by SOA

    Learn about BPM FastPath Goal to

    achieve BPM success in 90 days forinitial projects

    Get started quickly with no-cost cloud-

    based BPM tools on BPM BlueWorks

    Contact an IBM Representative to schedule a no-cost BPM DiscoverySession and let us show you how BPM can help optimize your business

    ibm.com/bpm

  • 8/6/2019 Ws Bus Monitor Best Practices

    51/54

    50

    Visit the BPM Samples and Tutorials page!

    http://publib.boulder.ibm.com/bpcsamp/

    Go to the Business Process Management Zone!

  • 8/6/2019 Ws Bus Monitor Best Practices

    52/54

    51

    Go to the Business Process Management Zone!

    http://www.ibm.com/developerworks/bpm

    Learning More about WebSphere BPM

  • 8/6/2019 Ws Bus Monitor Best Practices

    53/54

    52

    Learning More about WebSphere BPMIBM Education Assistant

    http://publib.boulder.ibm.com/infocenter/ieduasst/v1r1m0/topic/com.ibm.iea.wbmonitor_v7/plugin_coverpage.html

    C i ht d T d k

  • 8/6/2019 Ws Bus Monitor Best Practices

    54/54

    53

    Copyright and Trademarks

    IBM Corporation 2010. All rights reserved. IBM, theIBM logo, ibm.com and the globe design aretrademarks of International Business MachinesCorporation, registered in many jurisdictionsworldwide. A current list of IBM trademarks is availableon the Web at "Copyright and trademark information"

    at www.ibm.com/legal/copytrade.shtml. Othercompany, product, or service names may betrademarks or service marks of others.