A tutorial presentation introducing the concepts of business views and policies for monitoring IBM MQ and any other middleware or technology for middleware-centric application performance management.
2. What is a Business View?
Why use Business Views?
Problem centric views of the managed environment
Share management information across the organization via the Web
Improves speed of problem resolution and recovery
Improves visibility into IT problem areas
Provides visibility and impact on business processes
Increases overall productivity of maintaining complex IT infrastructure
Cuts the cost of maintaining IT environment
Important Features:
User defined representation of the managed environment
Wizard that allows users to define rules/alerts/automation very easily
Quickly share your views on the web
Send alerts to when problems occur
Collect historical information and record into any SQL database
False alarm detection and suppression
Create recovery procedures that can be executed automatically
2
(C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
3. What is a Sensor?
Sensor is a building block of every business view
Monitors one or more application metrics (facts)
Contains rules with user-defined thresholds and conditions
Executes user-defined scripts and actions
Triggers e-mail and user-defined notifications
Conditionally logs metrics into SQL database
Sensor maintains 3 measurements about each metric
Severity – indicated by a colored icon as well as severity number
Value – indicates the actual value of the measured metrics
Health – a value from 0.0 to 1.0 indicate the health status based on weighted average of child sensors
Sensor is event based
Sensor severity, value and health change based on changes in metrics (facts)
Facts change based on agent/expert sampling periods or application event
Changes in sensor severity and health are governed by user-defined rules
3
(C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
4. Business View Example: AutoPilot Health
Below is a built-in business view for monitoring AutoPilot system health
This view can be found at ds://AutoPilot_IT/AutoPilot_Health.bsv
Sensors: Business View is a collection of user-defined rules
organized as hierarchy.
(C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
4
5. Business View Example: IBM MQ
Below is a built-in business view for monitoring WebSphere MQ infrastructure.
This view can be found at ds://IBM_MQ/MQE2_Qmgrs.bsv
(C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
5
6. Overview: Building Business Views
Create a hierarchical structure of the environment
Break down the problem into small logical pieces
Each piece is a “sensor” in a business view
Define elements that need to be monitored
Such as CPU idle time , queue depth etc
Each such element is published by an Expert/Agent
Define rules that evaluate given elements
Assign rules that evaluate chosen elements
Rules produce a single result {Value,Severity,Health,Action-Alert}
Understand business view deployment model
Central repository for all business views
Deployed as policies that perform automated actions and alerts
Access is based on role based security
(C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
6
7. Guidelines: Building Business Views
Understand your audience
Business views are designed to solve user’s problems
Know what is important to the target audience
Avoid hard-coded names and values
Make use of business view environment variables
Make use of global environment variables (java, managed node)
Focus on modularity and reuse
Build in layers – from simple to more complex
Each business view is like a template that can be reused
Avoid content duplication across multiple business views
Link business views rather then copy/paste
Use sensors to evaluate results from other business views
7
(C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
8. Before you begin
Please review Chapter 2 of AutoPilot/M6 Installation Guide
It is recommended that you review AutoPilot Online Library
Understand AutoPilot/M6 terms and concepts AutoPilot/M6 Concepts
Managed Nodes
Managers and Experts
Business Views and Policies
Facts
The following steps presume that you’ve already:
Installed and configured AutoPilot for Middleware (former MQControl, AutoPilot/WMQ)
AutoPilot/M6 with WebSphere MQ plug-in
Configured and enabled WebSphere MQ experts
8
(C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
9. Business Views by Example
Problem Statement
Determine whether queue ‘ABC.TESTING.QL’ is being drained
Alert appropriate administrator only if the condition persists for 15 continuous
minutes.
Do not send alerts on weekends
Maintain historical information
Share the operational view with web users
Define what and how
Monitor an IBM MQ queue named ‘ABC.TESTING.QL’ for a current depth of 25 or
more messages, and the number of IPPROCS (Input Open Count) is 0 (determine
whether the queue is being drained)
For this example:
Make sure Workgroup Server Expert WGS is configured and running.
9
(C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
10. Open a Blank Business View
Open a blank business view by clicking on “Business View” button or
“Tools” > “Business View”.
10
(C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
11. Create a new Sensor
11 (C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
Right-click on “Untitled” sensor, select “Properties”, type
in a new “Name”
The name is arbitrary and should reflect the logical meaning of
the view
Description is a free flow text (HTML tags are allowed)
12. Customizing using the Wizard
12
Create a sensor named “Monitor ABC.TESTING.QL”.
Type in the “Description”
Set the “Initial Severity” to “Success”
(C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
13. Select or type facts to Include
13
(C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
Drill down to the WGS expert, until you see
WGSMQMYOURNODEQMGRQueuesLocalABC.TESTING.QLCURQDEPTH
Select the variable and click “Include” button
14. Select Facts to Monitor
Drill down to the WGS Expert, until you see
WGSMQMYOURNODEQMGRQueuesLocalABC.TESTING.QLIPPROCS
Select the variable and click “Include” button.
Include all the required facts and click Next
14
(C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
15. Define Evaluation Rules
15 (C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
Define logical rules on both variables as shown below.
Click “+” sign to create more logical rules.
%f0:Value represents CURDEPTH and %f1:Value represents IPPROCS
Select Next.
16. Alert Details
16 (C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
Provide alert details such as e-mail and/or actions.
Also you may set the “Trigger Delay” (900000 ms=15
min)
(do not send alert unless the problem persists for 15
continuous minutes).
Optional: specify “User Action”, (e.g. MYAPPL.BAT) to
run the action on the machine that triggered the
condition (metric origin). By default the action is
executed on the machine running the business view.
Click Next to complete.
17. Alert Details:User Action Variations
User defined scripts and executable programs
Must be in the path of the User running CEP Server or Domain Server business view is deployed OR
Path must be specified within the “User Action” field of the “Alert Details”
Invoking methods within AutoPilot services (experts, managers)
Format: method:ServiceName.methodName(arg_list), where
ServiceName – name of registered AutoPilot service such as expert or manager
methodName – name of the public method implemented by the service
arg_list: type=value1,…,type=valueN
Supported types: String, Integer, Long, Float, Double, Boolean
Supported array types: String[], Integer[], Long[], Float[], Double[], Boolean[]
Example: method:JMX_Monitor.invoke(String=Domain,String=MBeanName,String=mbean_method,String[]=null)
Array value format: [‘val1’’val2’…’valN’]. Example: [‘This’’is’’a’’test’] – no spaced between values.
Empty values can be specified as null
No spaces allowed unless part of the value
Parameters can be passed to user actions
Environment variables can be specified using {env_var} format
Example: MYAPPL.BAT {SERVER} param1 param2 … paramN
17 (C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
18. Customize Options
18 (C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
Right-click on the sensor “Monitor ABC.TESTING.QL” and select “Properties” menu.
19. Define Alert Intervals
19 (C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
Select “Ignore” tab and check “Sunday”, “Saturday”
Type 12:00 AM in the “Ignore From” field (Time Zone can be specified as well)
Type 1440 min in the “Ignore Duration” field (24 hours)
20. Collecting History
Select “Logging” tab to define where historical
information will be recorded.
On the root sensor you can fill details of the SQL
database you want to log the sensor DB
20
(C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
21. Save Your Business View
You may now save the business view by clicking on the “Save” button at the top of the
business view.
21 (C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
22. Deploy Business View as Policy
To deploy the business view as a policy:
Click on the “Deploy As Policy” button
Select the target manager where the view will run
(C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
22
23. Select Deployment Manager
Select “Deploy” to move the business view from your local machine onto the server.
Once deployed the “green” check mark will light up next to the target.
(c) Nastel Technologies, Inc. All rights reserved.23
24. Enable Deployed Business View
Using “>” Start button, enable the deployed business view
(C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
24
25. Saving Deployment
Once the changes are performed, save the managed node by right-clicking on the
managed node and selecting “Save Deployment” option:
(C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
25
26. Business Views on the Web
Once deployed, business views are automatically available to web users
(subject to security permissions).
Follow steps below to browse web business views:
Point your browser to http://localhost:8080/mconsole, where localhost should be
substituted for the value of <APWEB> server.
Login as “Admin”, password “admin” (default settings)
For more information on AutoPilot/Web refer to AutoPilot M6 User Admin
Guide
(C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
26
27. Your Business View Online
(C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
27
28. General Considerations
AutoPilot Console should be used as an authoring tool to:
Create/Deploy/Modify Experts, Managers, Business Views
Test and verify business views
Business Views:
Deployed within AutoPilot Managers
Use sound design methodology to create and maintain business views
Use version control systems such as VSS
Domain Server (DOMAIN_SERVER) needs to be highly available
It does not relay traffic between Managed Nodes and Consoles
Domain Server is only used as directory/lookup and security service
AutoPilot Console will not be able to logon if Domain Server is not available
(C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
28
29. Business Views:Best Practices
Avoid hard-coded names – use environment variables
Global environment variables
Java variables
Managed node variables (node.properties)
Business view environment variables – using {env_var} convention
Avoid duplication – promote modularity and reuse
Define and enforce naming conventions
Focus on creating modular reusable business views
Create complex business views by combining simple ones
KISS approach – keep it small, stupid and simple
Build small and simple business views
Link business views together – AVOID COPY/PASTE
Referencing business views – reuse existing logic
Complex Event Processing using Business views
Business view is an event processor – use it as such
(C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
29
30. Performance Considerations
Managed node performance guidelines
CPU utilization is proportional to
# and scope of the business views deployed with the Managed Node
Discovery intervals and scope of poll based experts (e.g. WebSphere MQ Experts)
Memory utilization (memory_utilization) is proportional to
# of Experts and Managers deployed
# of facts published within the Managed Node (totalFacts should be less then
maxFacts)
# and scope of the business views deployed with the Managed Node
Estimated total_memory~1000*totalFacts
Example: Average memory utilization for a Managed Node
with 10-15 Experts and
50,000-75,000 facts may require 60-90 MB of virtual
memory.
(C) NASTEL TECHNOLOGIES, INC. ALL RIGHTS
RESERVED.
30