Title: ASAP 2.0 Introduction to EDL
1ASAP 2.0Introduction to EDL
- Mike Miller
- m.miller_at_hp.com
Presentation contains animation sequences that
are best viewed in slide show mode. A colon
character at the end of a slide bullet indicates
when to click the mouse button to advance
animation
2ASAP EDL - Contents
- Overview of ASAP EDL Language
- Why its important to understand EDL.
- Requirements and Benefits
- Interactive Development Environment
- Statements and Examples
- ASAP Resources
- Internet http//NonstopASAP.com/Document.htm
- See 2.0 TOI Materials and ASAP 2.0 TOI EDL
- Questions gt email support_at_NonstopASAP.com
3ASAP EDL - Overview
- What is EDL ?
- Defines how a monitored Entity is related to
ASAP features and functions. - Developers use EDL
- To define how to monitor Subsystem Availability
- To define how to monitor Application Availability
- EDL is not something that ASAP users
- Need to see,
- Understand,
- Or even be aware of
4ASAP EDL Why care about EDL?
- EDL was designed to define entity availability
properties - But EDL resulted in additional benefits
- Allows users to have different sets of customized
ASAP settings. - Allows entire environments to be archived for
later reference. - Observed behavior can be shared with other ASAP
users. - ASAP environments can be mailed to other people.
- Useful for Application and System reporting.
- Both Data and Schema are stored in an EDL file
- Allows an entire ASAP environment to be saved in
EDL file. - Means you can completely snapshot or capture
situations. - EDL Files can be saved, mailed, reviewed, and
displayed. - To better understand EDL, lets review EDL
Requirements
5ASAP EDL Requirements
- ASAP R2 Requirements
- Needed to allow extensible Entity Definitions
- Allow Customers to define different Application
Entities. - Allow Third Parties EMFs access to Application
Entities. - Needed to provide an entity-attribute Name-Space
- Allow DOTs to use entity-attribute Names, instead
of metric ids. - Allow users to customize entity-attribute Names
(internationalization) - Needed to reduce Maintenance
- Provide Version Independent code (R2 Client runs
against R1 Server) - Reduce Source Code maintenance (Add new Entity
w/o code change)
6ASAP EDL Requirements
- Needed to Externalize Definition Customization
of - Entity Names
- Attribute Names
- Help Text
- Heading Text
- Availability Vectors
- Data Integrity Checks
- State Determination Rules
- Graph Normalization Values
- Data Formatting Alignment
- Command required to retrieve data
-
- and any other ASAP property that is related to
Entity-Attribute definitions.
7ASAP EDL - Features
- Result - Entity Definition Language (EDL) File
- EDL File provides Container for ASAP properties
- EDL File allows ASAP properties to be Portable.
- Provides Portable encapsulation of ASAP
Properties. - Entities, Attributes, and Data can be moved
around. - You can save/share different ASAP environments.
- Client registers the .EDL extension with Windows.
- EDL also provides mechanism for
- Version independence - due to encapsulation.
- Problem Reporting - Captures entire environment.
- Prototyping Entity, Attribute, Data
definitions. - Education Demo features of environment.
- QA/Testing - Reproducing test scenarios.
8ASAP EDL Benefits
- EDL Allows Applications to use full ASAP
infrastructure. - Release 1.0 supported multiple applications
- But only allowed one stats record definition for
all Apps. - All entity Metrics were forced into single record
model. - Restrictive, and lead to Nonhomogeneous data.
- Release 2.0 allows multiple entity definitions
- Allows separate Statistics record definition for
each entity. - Allows different Apps to have different
entity-attribute names. - Allows named service-level objectives, eg Rank
ATM, Cashgt1000. - Allows disjoint Applications Third Parties to
share infrastructure. - Allows specific user inclusion/exclusion of App
entities...Atm, Funds, Accounting
9ASAP EDL Getting Started with EDL
- EDL Development Environment
- Accessed from ASAP Client
- Select File... pulldown Menu
-
- EDL menus are initially disabled.Protects
inexperienced users
10ASAP EDL Enabling EDL IDE
- EDL not enabled by default
- To enable EDL IDE
- Select View... Options...
- Select Entity Tab
- Click EDL Button ...
- -Check EDL-IDE check box
- -Click OK
- -File... EDL ... pulldown menus will now be
enabled
11ASAP EDL Opening EDL IDE Window
12ASAP EDL IDE
- ASAP Interactive Development Environment
- Allows Entity definitions to be interactively
developed - Allows Rapid Prototyping of Entities and Data
- Allows Importing and Exporting of EDL definitions
- Provides on-the-fly editing and compilation of
entity definitions - Provides context sensitive Help for statements
13ASAP EDL Working with EDL IDE Window
14EDL IDE Rapid Application Development
15EDL IDE - Context Sensitive Help
16ASAP EDL - Statements
- ENTITY statement
- Defines entity name and properties (eg SQL Table)
- ENTITY Atm Help Automated Teller
Machine - ATTRIBUTE statement
- Defines entity attribute names and properties (eg
SQL Columns) - ATTRIBUTE System Help System NameATTRIBUTE Atm
Help Atm NameATTRIBUTE Status Help Atm
StatusATTRIBUTE Cash Help Cash in Atm - DATA statement
- Defines data associated with entity
- DATA ATMSystem Atm Status Cash--------
----- ------ ----\Chicago Loop Up
150\Chicago North Up 3750
17ASAP EDL - ENTITY statement
- Entity statement defines entity properties
- ENTITY ATM Enabled YES
Command "APP \ ATM,RAW,TAB,STATE Help
"Automated Teller Machine KeyForNode
System KeyForObj Atm KeyForRow
Date Time - DATA ATMSystem Atm Status Op Date Time
Cash-------- ----- ------ -- ---------- -----
----\Chicago Loop Up 2 2000/11/15 1000
150\Chicago North Down 8 2000/11/15 1000 3750
18ASAP EDL - ENTITY statement syntax
- ENTITY ltentity-namegt
- CI ltStringgt
- Command ltStringgt
- DataItems ltStringgt
- Detail ltStringgt
- Enabled ltBooleangt
- ErrorStateName ltStringgt
- Help ltStringgt
- History ltStringgt
- KeyForNode ltStringgt
- KeyForObject ltStringgt
- KeyForRow ltStringgt
- MaxObjectives ltNumbergt
- Rate ltNumbergt
- SGPFile ltFilenamegt
- SGPManaged ltBooleangt
- SGPSuffix ltAlphagt
- Reserved ltBooleangt
- Version ltNumbergt
19ASAP EDL - ATTRIBUTE statement
- Attribute statements define entity columns
- ENTITY ATM ... AT System Grid YES
Graph NO Help System Name" AT Atm Grid
YES Graph NO Help ATM Name" AT Status
Grid YES Graph YES Type CHAR5
StatePair YES StateIsOp YES
StateRule UseStateGraphState Help
"Operational Status of ATM" AT OpState Grid
NO Graph NO Help OpState
2gtUp-Green, 8gtDown-RedX" ... DATA
ATMSystem Atm Status Op Date Time
Cash CashState-------- ----- ------ --
---------- ----- ---- ---------\Chicago Loop Up
2 2000/11/15 1000 150 7\Chicago North
Down 8 2000/11/15 1000 3750 2
20ASAP EDL - ATTRIBUTE statement syntax
- Attribute statement defines attributes and
properties - ATTRIBUTE ltattribute-namegt
- Align LEFT RIGHT
- Format ltStringgt
- Graph ltBooleangt
- GraphMax ltNumbergt
- Grid ltBooleangt
- Heading ltStringgt
- HeadPickup ltBooleangt
- Help ltStringgt
- MetricRule ltStringgt
- StatePair ltBooleangt
- StateIsOp ltBooleangt
- StateRule ltStringgt
- TypeData INT INT32 INT64 REAL64
CHARnn
21ASAP EDL StatePairs
- ASAP provides the concept of StatePair
Availability Vectors. - StatePairs allow a state to be associated with
an attribute value. - When an attribute is defined to be a State Pair
- The Attribute ltValuegt has a ltStategt associated
with it - StatePairs form a ( ltValuegt,ltStategt ) Pair
- Examples
- (98, 7) gt Value98, State 7 gt Critical
- (Up, 2) gt ValueUp, State 2 gt Up
- Useful for assigning a state to a value,
regardless of the value.
22ASAP EDL StatePair Property
- In EDL StatePair indicates a state is paired
with an attribute. - StatePair YES, says an attribute has a state
associated with it. - State of attribute is determined by the value
following Attribute. - AT Status GRID YES -- Show Annotated Status
in Grid GRAPH YES - Analysis
Graph Property StatePair YES -
Attribute is a State Pair vector
StateRule UseStateGraphState - State algorithm
StateIsOp YES - State is Operational
object state HELP "Operational Status
of Object"AT OpState HELP "Operational State of
Object" - DATA ATMSystem Atm Status Op Date Time
Cash CashState-------- ----- ------ --
---------- ----- ---- ---------\Chicago Loop Up
2 2000/11/15 1000 150 7\Chicago North
Down 8 2000/11/15 1000 3750 2
23ASAP EDL Cash StatePair Example
- DATA ATMSystem Atm Status Op Date Time
Cash CashState-------- ----- ------ --
---------- ----- ---- --------- \Chicago Loop
Up 2 2000/11/15 1000 150 7\Chicago North
Down 8 2000/11/15 1000 3750 2
- System
- Atm
- Status
- Op
- Date
- Time
- Cash
- CashState
24ASAP EDL Availability Vectors
- ASAP Availability Vectors are not necessarily
StatePairs in EDL. - Availability Vector States are based on one of
three constructs - Attribute is a ltValuegt
- Attribute a simple number such as
- Transaction Rate, .
- Attribute Value is a ltStategt
- Attribute Value is interpreted as a ltStategt
- 2 gtUp, 6 gtWarning, 7 gtCritical, 8 gtDown,
- Attribute ltValuegt has ltStategt Associated with
it StatePair - Attribute is a ( ltValuegt,ltStategt ) Pair
- (OK, 2) gt ValueOK, State 2 gt Up
- (98, 7) gt Value98, State 7 gt Critical
Value
Value is State
25ASAP EDL - StateRule Algorithms
26ASAP EDL - DATA statement
- Data statement allows entity data to be defined
and saved in EDL file along with entity
properties. - Data statement is useful for
- Saving data in an EDL file (eg for running
environment) - Manually prototyping data for an entity (eg for
design) - Displaying data in saved EDL file
(demo/reporting). - DATA ATMSystem Atm Status Op Date Time
Cash-------- ----- ------ -- ---------- -----
----\Chicago Loop Up 2 2000/11/15 1000
150\Chicago North Down 8 2000/11/15 1000 3750
27ASAP EDL - DATA statement syntax
- Data statement allows Entity data to be defined
and saved in an EDL file along with entity
properties. - DATA ltentity-namegt
- Heading1 Heading2 Heading3 ...
- -------- -------- --------
- \Col1dat Col2Data Col3Data ...
- \Col1dat Col2Data Col3Data ...
- ...
- ..
-
- WYSIWYG design layout makes DATA statement easy
to use. - What-you-see-is-what-you-get Syntax is useful
for both - Designing prototype data for a new entity
- Viewing generated EDL Data when using the EDL
Export Function...
28ASAP EDL Exporting EDL
- ASAP Client allows Exporting environment.
- When you select File... Export EDL...
- Client creates EDL for its Environment.
- Exported EDL includes
- All Entity Attributes Definitions
- All Live Data for enabled entities
- All Availability, Stats, Performance data for
enabled Objects and associated states - All Attribute settings including
- Show in Graph
- Show in Grid
- Graph Max values
- State Determination Rules
- To Export, select File... Export EDL... From
ASAP Client browse window...
29ASAP EDL Export EDL - Options Dialog
- Export EDL Dialog defines what to export
- System Entity Definitions
- Cpu, Disk, Expand, File, Process, RDF, Spooler,
System, Tape, TMF, ... - User Entity Definitions
- App, Atm, Funds, Accounts, ...
- Data Statements
- Data for selected entities, eg Cpu, Disk, ...
- Click OK To Generate Export EDL
30ASAP EDL Exported EDL - IDE Window
- When EDL is Exported to IDE Window
- Exported EDL can be
- Edited
- Compiled
- Saved
- Mailed
- Imported
- Re-compiled
- Note EDL includes DATA statements
- Represents Snapshot of the entire ASAP
environment
31ASAP EDL Summary
- Provides Extensible definition of Entities
Attributes - EDL Import - Allows Entities to be added.
- EDL Export - Allows Environment to be captured.
- EDL File - Provides a Container for ASAP
properties - Allows ASAP properties to be Portable.
- Encapsulates Entity, Attribute, and Data
definitions. - Allows Saving and Sharing of ASAP environments.
- EDL Provides
- Version Independence - due to encapsulation.
- Problem Reporting entire environment is
captured. - Separation of statistics records - for
Application entities. - Discrete entity-attribute names for Service Level
Objectives. - Rapid Prototyping of Entity, Attribute, and Data
definitions. - Allows Customers Third parties to share ASAP
Infrastructure.